5
System.BadImageFormatException: Could not load file or assembly 'x_Accessor, 
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. 
This assembly is built by a runtime newer than the currently loaded runtime and 
cannot be loaded.

我很难找到治愈这种疾病的方法...

我已经为点网测试项目创建了单元测试。使用默认的单元测试框架。

自动化工具创建了一个访问器——用于测试私有方法

[我知道理论,私有方法应该通过它们的调用者进行测试——但是,这取决于它们的目的、内容、上下文等......所以如果可以的话,我会测试它们。]

我过去在几个项目中做过这个,效果很好。

但是在我现在尝试测试的这两个项目中,我遇到了这个问题......

注意:我使用的是 Framework 3.5 - 这可能是个问题?- 但访问者应该知道这一点!

我绝对看不到可以修改程序集的运行时的地方……我想它是访问器。

是的,我确实清理并重建了,我确实完全擦除了输出文件夹并重建,我确实删除了访问器和私有方法并重新创建它。

请帮我找到解决方法!谢谢你。

4

1 回答 1

7

您不能引用在更高 .NET 版本(或者更准确的 CLR 版本)中编译的程序集。因此,在您的示例中,如果您有一个用于单元测试的程序集是 .NET 3.5,那么您不能引用一个是 .NET 4.0 的程序集。

我认为这个答案就是您要寻找的答案:

如果使用私有访问器,针对 3.5 框架的 VS2010 SP1 单元测试会失败

于 2013-02-07T18:52:41.340 回答