0

这件事快把我逼疯了,我不知道发生了什么。

我为我的 ASP.NET MVC 3 应用程序创建了一个部署包,包内的 MY MAIN DLL FILE 的日期为 2013 年 1 月 31 日,今天是 2013 年 2 月 3 日。在这几天里,我做了很多改变。

它打包旧文件!一月版到底哪里来的???因为我在其他任何地方都找不到。为什么它完全引用它?

在同一时期,我创建了一些视图,日期为 2013 年 2 月 2 日,其中包括...

PackageTemp (/obj/Release) 文件夹包含旧的 dll,而我的 /bin 文件夹包含新的?

任何想法,这可能是什么原因造成的?

4

1 回答 1

0

这是你的答案
它隐藏在 GAC 中。它可能会无限期地驻留在那里。使用更新的版本确实可以解决问题,但是 Visual Studio 中有一个突出的错误与选择正确版本的 DLL 文件有关。(如果 DLL Hell 还不够糟糕,Visual Studio 团队正在让它变得更糟!)

在 GAC 中查找它很棘手,我无法建议您如何执行此操作,但是一旦从那里删除旧版本,就不会再找到它。有时,即使您将编译器指向较新的版本(按日期),它也会使用旧版本,因为它具有相同的版本级别(按版本)。那是它的错误。

于 2013-02-03T14:26:05.880 回答