我在数据层中引用了MySQL.Data 5.2.3程序集,太好了。目前,我有一个小型控制台应用程序,该应用程序引用了与此数据层连接的相同解决方案,它连接得很好。然后,我创建了一个单元测试项目(也在相同的解决方案中)并引用了相同的数据层项目,从中我得到:

测试方法LTTests.WrapperTest.LoginTest引发异常:System.IO.FileLoadException:无法加载文件或程序集'MySql.Data,版本= 5.2.3.0,区域性=中性,PublicKeyToken= c5687fc88969c44d'或以下之一它的依赖关系。无法验证强名称签名。程序集可能已被篡改,或者已被延迟签名,但未使用正确的私钥完全签名。 (来自HRESULT的异常:0x80131045)。

所以我想了解...我可以针对控制台exe执行此操作,并且它可以工作,但不能进行单元测试?这让我很担心要建立在明显有缺陷的东西上,但是接下来的工作让我茫然。我迷路了,我一直在添加各种各样的东西来寻找交易的内容,我一无所知。

异常来自数据层,而不是来自测试(针对每个堆栈),因此就像测试正在调用该层的方法(duh),而数据层正在呕吐,但不适用于控制台吗?

谢谢。

有帮助吗?

解决方案

这不是导致错误的答案,而是找出错误的可能方法:

您可以使用属于dotnet sdk的“程序集绑定日志查看器”(Fuslogvw.exe)找出加载的内容和原因。

如果启用了日志记录,则可以显示从哪个目录以及哪个程序集加载了该程序集。

有关详细信息,请参见 http:// msdn。microsoft.com/en-us/library/e74a18c4(v=vs.80).aspx

因此可能存在不同版本的MySql.Data,并且错误消息表示即发现的版本号不是预期的版本号。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top