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 - 这可能是一个问题? - 但访问者应该知道!
我完全看不到在哪里可以修改程序集的运行时...我想这是访问器。
是的,我做了清理和重建,我完全删除了输出文件夹并重建,我确实删除了访问者和私有方法并重新创建它。
请帮我找到解决方法!谢谢。
答案 0 :(得分:6)
您无法引用在更高版本的.NET版本中编译的程序集(或更准确的CLR版本)。因此,在您的示例中,如果您有一个用于.NET 3.5的单元测试的程序集,那么您就无法引用.NET 4.0的程序集。
我认为这个答案正是你要找的:
VS2010 SP1 unit tests targeting 3.5 framework fail if using private accessor