mef

    3热度

    1回答

    我们有一个接口,它将通过类 来实现,例如,它负责通过网络或com端口进行数据传输。 我们称之为IDataTransporter现在,我们有2个实现: ComPortDataTransporter和TcpDataTransporter。 显然这两个需要非常不同的配置。 第一个设置有buadrate,启动/停止位等... 第二个设置如ip地址和端口。 有没有处理这个问题的最佳实践?最终我们希望用户能够

    2热度

    4回答

    我在自己的项目中使用了MEF,并且我非常喜欢它。这很容易,并且在确定我们的拙劣的 API模型后,它才起作用。 现在我需要类似于.NET Framework 2.0的东西。有没有可以在.NET Framework 2.0下工作的类似项目? 我只是在寻找以简单的方式为我的项目添加插件支持。

    2热度

    2回答

    我有一个应用程序有2个主要组件+其他DLL: 核心DLL(得到了所有核心功能) GUI 第三方和完全独立的DLL这需要DI等 现在我正在实现插件支持。 哪个DLL应该负责加载这些插件? GUI或核心DLL? 我正在使用MEF,所以不太确定在哪里粘贴它。

    2热度

    3回答

    我做了一个非常简单的MEF示例,它运行在.NET上, 但在Mono上无法正常工作。 using System; using System.Collections.Generic; using System.Text; using System.ComponentModel.Composition; namespace Vialis { class Program {

    4热度

    1回答

    参考托管扩展性框架(MEF),我试图找出如何使用mock创建干净的测试。 我有三个私人进口导出组件。每个导入的对象(字段)需要被模拟。鉴于CompositionContainer使用奇特的反射策略来设置可组合部件的导入私有字段,即使在单元测试中,我也需要使用容器来设置这些字段值。 我如何告诉容器在运行时间接受我和犀牛嘲笑创建为一个有效的出口动态对象,以便它可以用来满足我测试组件的进口?

    2热度

    2回答

    我正在尝试为MEF导出使用共享部分创建策略。然而,它并没有像我想的那样工作。我在应用程序中做了两次构图,并且每次都获得对象的新副本。我已经通过向对象实例添加实例计数器证明了这一点,并在调试中运行它。事实上,我第二次做的组成,我得到了FakeAutocompleteRepository的新副本instCount = 2,出口部分包含 [PartCreationPolicy(CreationPolic

    3热度

    3回答

    编辑:马特,这确实解决了我的一些(大部分)问题,谢谢。现在唯一的问题是我如何在WPF中执行此操作?我有一个基于定制的部分断UserControl的但在WPF没办法的事: [Import]<my:SomeCustomControl> 所以级联不会在这种情况下工作。 /编辑 我有一个问题[导入]在我的项目荷兰国际集团各MEF组件。我是否必须在每个课堂上使用CompositionContainer?

    3热度

    1回答

    我目前MEF的工作和面临的一些问题 我想是从目录中加载的DLL。 第i个扫描目录和 名称属性从各自DLL保存两件事情在字典(如串) 和模块名称(如串) 这里是ScanDirectory()代码 private void ScanPluginDirectory() { catalog = new AggregateCatalog(); catalog.Catalogs.Add

    5热度

    4回答

    我们目前正在考虑为我们的下一个应用程序使用CAB或MEF。我没有看到关于事件代理如何处理兄弟控制通信的codeplex的任何示例,也许我错过了它。跨控制通信如何在MEF中工作? 另外,我们正在计划使用Infragistics,它为CAB框架提供了额外的组件。 Infragistics控制能力如何与MEF整合?总的来说,MEF值得追求一个体面大,15,000小时的严格开发,应用程序吗?

    6热度

    1回答

    许多简单 MEF示例(下面列出)使用AttributedAssemblyPartCatalog。 CodePlex上MEF Simple Introduction to Extensible Applications with the Managed Extensions Framework页面上Hosting MEF in an application由布拉德·亚当斯 Managed Exten