当我运行单元测试来序列化到xml文件时,我一直收到错误消息:
无法加载文件或程序集“Company.Fin.Bank.Common.XmlSerializers.dll、Version=1.0.0.0、Culture=neutral、PublicKeyToken=null”或其依赖项之一。系统找不到指定的文件。
我想Company.Fin.Bank.Common.XmlSerializers.dll可能在缓存的某个地方,但是不可能找到这个dll,即使我不需要那个dll。我想移除它。但我在哪里能找到它呢?它可能在缓存中吗?如果是,我如何从VS中清除缓存?这个问题对我来说是很新的。
奇怪的是,我使用了另一台笔记本电脑(win 7)来运行单元测试,没有收到错误消息--它起了作用。但是当我使用我自己的笔记本电脑(win 8)时,我总是收到错误信息。我不知道为什么。
我希望从你那里找到解决办法。你的帮助意味着很多。谢谢!
发布于 2013-08-27 15:37:31
发布于 2013-08-27 15:27:00
即使我不需要那个dll
Visual通常会删除不需要的DLL。通常,这是由依赖关系引起的(这很难跟踪)。
我想移除它。
在解决方案资源管理器中签入项目的引用。如果它们中的任何一个有一个黄色三角形,就意味着找不到它们(如果您没有实际使用该引用,项目仍然可以编译和运行)。
它可能在缓存中吗?
正如Daniel提到的,C:\Windows\assembly
和C:\Windows\Microsoft.NET\assembly
位于全局程序集缓存的位置。如果没有,请检查引用的提示路径(它将显示在Properties中)。
祝您能找到引用,请记住,在大多数情况下,您不仅需要实际的DLL,而且需要它的所有使用的引用。另外,如果您需要一种更谨慎的方法来查看引用,像DotPeek这样的反编译器可能会很有用。
https://stackoverflow.com/questions/18469419
复制相似问题