使用VS2010单元测试进行测试时,Unity 2无法加载注册类型

时间:2010-11-17 12:22:48

标签: unit-testing visual-studio-2010 assemblies gac resolver

我已经使用app config设置了一个Unity 2.0.414.0容器 我的解决方案结构如下所示:

项目A :使用Unity和Unity xml配置文件的依赖工厂 项目B :几种类型是Unity配置中使用的接口的实现。这些类型引用 Microsoft.Sharepoint.dll 项目C :Unity的其他实施类型。没有提到Sharepoint dlls。

在Visual Studio 2010中执行单元测试期间,我遇到了问题 当我尝试为任何Project B类型加载我的Unity配置时,它无法加载并导致整个容器失败的配置。
在多次尝试解决问题设置并检查项目B的引用后,我注意到如果所有程序集都安装在GAC中,Unity工作正常。
如果我从GAC中删除它们,Unity配置的加载将失败。

如果我尝试从简单的Windows应用程序调用Unity Resolve方法 Unity,无论我的所有程序集是否都在GAC中,Unity都会加载一切。

那么我的Visual Studio测试配置中缺少哪些装配解析器设置,因此Unity无需部署GAC即可工作?

1 个答案:

答案 0 :(得分:1)

我发现了我的问题 我在Visual Studio测试的Out文件夹中遗漏了几个输出文件 我所要做的就是在测试设置中添加一个新的部署文件夹 我去了local.testSettings,然后选择了Deployment,然后添加了我的bin文件夹作为部署项。 现在Visual Studio将所有文件从Bin复制到Out文件夹,一切都像魅力一样 希望它会节省一些时间给像我这样的情况的人:)

相关问题