我在数据层中引用了MySQL.Data 5.2.3程序集,很棒。我目前有一个小的控制台应用程序,同样的解决方案引用JUST THIS数据层连接就好了。然后我创建了一个单元测试项目(也在相同的解决方案中)并引用相同的数据层项目,从中我得到:
测试方法LTTests.WrapperTest.LoginTest抛出异常:System.IO.FileLoadException:无法加载文件或程序集'MySql.Data,Version = 5.2.3.0,Culture = neutral,PublicKeyToken = c5687fc88969c44d'或其中一个它的依赖关系。强名称签名无法验证。程序集可能已被篡改,或者是延迟签名但未使用正确的私钥完全签名。 (HRESULT异常:0x80131045)。
所以我试图理解......我可以为控制台执行此操作并且它可以工作但不是单元测试?这让我很紧张,建立在显然存在缺陷的东西上,但我不知道接下来要做什么。我迷路了,我一直在重新添加各种东西,寻找这笔交易,我不知道。
异常来自数据层,而不是来自测试(每个堆栈),所以它就像测试调用图层的方法(duh)而数据层正在调整而不是控制台?
感谢。
答案 0 :(得分:1)
这不是为什么会出现错误但可能找到它的方法的答案:
您可以使用属于dotnet sdk的“程序集绑定日志查看器”(Fuslogvw.exe)来查找加载的内容和原因。
如果启用了日志记录,它可以显示从哪个目录加载程序集以及哪个程序集导致它加载。
有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/e74a18c4(v=vs.80).aspx
因此可能存在不同版本的MySql.Data,错误消息表示找到的版本号不是它所期望的版本号。