2

我将我的应用程序编写为一个由 win32 MFC 应用程序启动的类库。我的每个视图都是一个单独的程序集,它与基类库一起位于托管 MFC 应用程序的子目录中。

我的问题是,如何让 MEF 使用此子目录中的程序集而不是根目录来解决导出类的依赖关系?

这就是我要的:

ParentFolder
 myapp.exe
 SubFolder
     myMvvmWindow.dll
     myMvvmSubWindow.dll
     *Microsoft.Expression.Interactions.dll*

这是我现在必须拥有的:

  ParentFolder
     myapp.exe
     *Microsoft.Expression.Interactions.dll*
     SubFolder
         myMvvmWindow.dll
         myMvvmSubWindow.dll
4

2 回答 2

1

您也可以在 app.config 文件中执行此操作:

是否可以设置不带 app.config 的程序集探测路径?

我一般是这样处理的。

于 2011-09-23T18:42:29.590 回答
0

MEF 不会为您处理这种情况,因为它使用 CLR 的正常程序集加载机制来查找依赖项。

但是,您可以通过处理AppDomain.AssebmlyResolve轻松解决特定子目录的问题。如果您检查子文件夹中未在主目录中解析的程序集,您可以自己加载它们并正确使用此功能。

于 2011-09-23T18:31:58.317 回答