10

我目前正在尝试找出为什么我的InjectableAttributes 从未到达过滤器部分
因此,我直接在源项目中链接,这样我就可以轻松地放置断点等。
但是,当我构建时,我收到以下消息:

以下模块是在启用优化或没有调试信息的情况下构建的:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\[一堆随机命名的目录]\assembly\[更多随机名称]\MvcTurbine.Web.DLL]

要调试此模块,请将其项目构建配置更改为调试模式。要禁止显示此消息,请禁用“在启动时没有用户代码时发出警告”调试器选项。

我检查了项目的属性。它的配置设置为“活动(调试)”,并且“优化代码”复选框未选中。

更新
如果我没有偶然包含文件而不是项目,我再次检查,但引用似乎正确。
只是为了确保我还删除了所有现有的垃圾箱,以便所有库都肯定在某个地方重建,但无济于事。

更新
在高级构建窗口中,调试输出设置为完整,所有选项都与正在构建调试信息的项目相同。
配置管理器显示该项目正在构建,并且具有与所有其他选项完全相同的设置。

更新
在 Debug->Windows-Modules 窗口中,涡轮库的符号状态是PDB file does not match image我删除了整个系统上所有相应的 pdb 文件,以确保重新生成它,但无济于事。
为了确保我还在整个系统上搜索了 dll 并删除了它们。没有什么。

什么可以阻止 VS 创建调试信息?

4

3 回答 3

7

我今天早上刚遇到同样的问题,使用的是 VS2010。我通过删除所有构建工件来解决它,例如可执行文件、库、PDB 等。这是在 \bin\Debug、\bin\Release、\obj\Debug 和 \obj\Release(包括子文件夹)中。然后我重新编译了调试配置,并重新开始工作。

于 2011-10-23T11:18:29.000 回答
4

检查是否正在为项目生成调试信息。您可以通过打开“项目属性”页面上的“构建”选项卡并单击“高级...”按钮来执行此操作。检查“调试信息”设置。请参阅此 MSDN 文章,了解每个选项的含义。

如果这不能解决问题,请检查 MvcTurbine 项目是否正在构建(Build -> Configuration Manager)。

于 2009-12-23T14:22:47.317 回答
2

听起来您引用了 MvcTurbine.Web.DLL文件而不是 MvcTurbine项目。尝试删除引用并将其重新添加为项目引用。

更新您确定 DLL 不是来自 GAC 吗?在应用程序运行时执行 Debug->Windows->Modules 并检查 Path 列。

于 2009-12-23T13:59:28.650 回答