Unity - 按配置解析而不参考类型

时间:2012-02-01 07:30:00

标签: c# c#-4.0 unity-container

我想解析一个类型而不引用存在类型的项目。 我希望Resolve将在运行时加载正确的程序集。

问题是=在运行时我决定使用哪种类型......并根据我想加载正确的程序集。

我该怎么做?

感谢

1 个答案:

答案 0 :(得分:0)

您期望Unity做什么? Vodoo?

您可以使用app / web.config配置Unity,只需在应用程序库文件夹中删除所需的程序集即可。但那是设计时的配置。

或者您使用代码配置容器,该容器允许您使用Assembly.Load来访问未被应用程序域直接引用的所有程序集。然后你必须使用某种反射来提取将动态注册的类型。

或者你可以跳过“让我们更加动态”的方法,并在某种引导程序中引用所有必要的程序集。

第三种方法是模块化您的代码配置并使用约定在运行时注册这些模块。 Unity不支持开箱即用的第三种方法,但TecX project中有一个StructureMap配置引擎的端口。请参阅 TecX.Unity.Configuration 项目中的文档或代码。测试可用于演示其工作原理。