【问题标题】:MEF Extension EventsMEF 扩展活动
【发布时间】:2012-02-14 11:40:22
【问题描述】:

我是 MEF(托管可扩展性框架)的新开发人员,并且已成功启动并运行了一个示例应用程序,其中包含多个扩展。这是一个很好用的框架。

我要做的是实现一个标准事件,可以从每个扩展中引发。例如,在我的主机应用程序中,我会有一个 EventHanlder

Extension_OnLog(字符串消息) //在这里执行一些日志记录。

然后每个扩展都能够引发此事件,该事件在主机应用程序中处理。

//扩展1 RaiseEvent OnLog("这是一些记录文本")

我不确定这个的正确术语。有人可以为我指出实现这种事件模型的正确方向吗?

【问题讨论】:

    标签: .net mef


    【解决方案1】:

    这样的东西可以工作:

    创建两个接口:

    IEventRaiser(将包含函数 RaiseEvent)

    IEvent1(将包含实际事件)

    创建一个模块 (Event1),它将实现这两​​个接口并导出这两个接口。

    您的“扩展”可以导入 IEventRaiser,这将允许他们引发事件。

    宿主应用程序将导入 IEvent1,这将允许它“订阅”事件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-07
      • 1970-01-01
      • 1970-01-01
      • 2014-05-04
      • 2023-04-07
      • 1970-01-01
      相关资源
      最近更新 更多