这件事让我发疯,我不知道发生了什么事。
我为ASP.NET MVC 3应用程序创建了一个部署包,并且包中的MY MAIN DLL FILE的日期为2013年1月31日,今天是2013年2月3日。在这几天里,我做了很多改变。
它包装旧文件!!!它到底在哪里得到1月版?因为我无法在其他任何地方找到它。为什么它完全引用它?
在同一时期,我创建了几个观点,日期为2013年2月2日,其中包括......
PackageTemp(/ obj / Release)文件夹包含旧dll,而我的/ bin文件夹包含新文件夹?
任何想法,是什么导致这个?
答案 0 :(得分:0)
here's your answer
它隐藏在GAC中。在那里它可能无限期地存在。使用更新版本可能确实可以解决问题,但Visual Studio中存在一个与选择正确版本的DLL文件有关的突出错误。 (如果DLL地狱不够糟糕,Visual Studio团队会让情况变得更糟!)
在GAC中查找它很棘手,我无法告诉您如何执行此操作,但是一旦旧版本从那里删除,将无法再次找到它。有时,即使您将编译器指向较新的版本(按日期),它也将使用旧版本,因为它具有相同的版本级别(按版本)。这是它的错误。