获取'源文件与模块构建时不同.'当我刚造出来的时候

本文关键字:源文件 模块 构建 获取 | 更新日期: 2023-09-27 17:49:32

这周我每天都在试图找到我在调试ASP时遇到的这个问题的信息。网络应用程序。我已经在源文件中查看了不同于何时构建模块和获取"源文件不同于何时构建模块。"寻求帮助,但一无所获。

我有一个包含一个项目的解决方案,其中DLL引用来自包含许多不同项目的不同解决方案中的另一个项目生成的库。

我的web应用程序使用第一个项目的源代码,所以我将调试器附加到它,并在代码中设置断点运行web应用程序。

在使用应用程序时,我尝试从引用的DLL中进入代码,它告诉我'源文件与构建模块时不同。'

我试过从两个解决方案中删除bin和obj文件夹,重建dll,然后在第一个项目中删除并重新添加对dll的引用。我不明白为什么它会告诉我源文件与模块构建时不同,当我只是构建它并添加参考。

我想我忽略了一些简单的东西,但我不知道还有什么可以尝试的。以前有人解决过这样的问题吗?

编辑:我刚刚试图从实际构建我正在使用的DLL的项目附加源代码,即使这与调试器在我的代码中停止的地方不正确对齐。我似乎找不到一种方法来查找正在被调试器使用的DLL的位置,但它肯定不是我正在构建的。

编辑2:我已经设法找出,有一个旧的DLL的副本在"C:'Windows'Microsoft.NET'Framework64'v4.0.30319'临时ASP。. NET文件",我删除了它,但每次我运行这个应用程序时,它都会重新创建那个文件夹和文件结构,就像以前一样。所以我做了一个批处理文件,每次我编译我的项目,复制新的DLL到DNN bin文件夹的同时运行。

获取'源文件与模块构建时不同.'当我刚造出来的时候

您是使用iis还是集成web开发服务器?只是猜测一下,但是你的web服务器可能还在使用你的dll的旧副本,所以在你重建你的项目后尝试重新启动它。

我现在没有访问VS,但是如果我没记错的话,当你在VS中点击运行按钮时,输出窗口包含所有加载的dll的路径。检查一下你是否加载了正确的模块。

希望有帮助

编辑:另外,记得复制pdb文件!由于您正在引用一个dll,因此很可能在bin文件夹中该dll的pdb文件与您刚刚构建的版本不同步。

我想我知道为什么IIS和VS使用旧版本的DLL了。这是因为我在DotNetNuke bin文件夹中还有一个旧版本。一旦我将新的DLL从构建项目复制到DNN bin中,我就能够很好地逐步完成代码。我从来没想过要检查一下。