我的断点(asp.net 2.0)在“后端”程序集中得到很好的打击,但没有 在代码背后。
我甚至可以看到 <%Response.CacheControl =“no-cache”; %GT;在我的asp.net主文件中被击中的行 但仍然没有背后的代码。我正在使用VS 2005,Windows 7 32位。 知道我还能检查什么吗?
答案 0 :(得分:5)
如果您的代码文件比正在运行的编译版本更新(在Web服务器上,无论是IIS还是开发服务器),将不会命中断点(红色圆圈将是空心的)。
尝试进行清理/重建,看看是否有效。
修改强>
我刚注意到你上次评论中的一些内容;你说你附加到asp.net进程。你附加了哪个过程?它应该是w3wp.exe。
答案 1 :(得分:3)
我的问题最终是因为我为项目创建了一个新配置,但没有为它设置项目的调试属性。所以这就是我必须要做的事情:
答案 2 :(得分:2)
我猜在加载页面的符号时出现问题,因此断点没有出现,
试试这个
1 - 在Visual Studio中进行调试时,单击Debug> Windows>模块。 IDE将停靠一个模块窗口,显示已为项目加载的所有模块。
2 - 查找项目的DLL,并检查符号状态。
3 - 如果它说符号已加载,那么你就是金色的。如果它显示无法找到或打开PDB文件,请右键单击您的模块,选择加载符号,然后浏览到PDB的路径。
4 - 我发现有时需要
停止调试器
关闭IDE
关闭托管应用程序
核对obj和bin文件夹
重启IDE
重建项目
再次浏览“模块”窗口
一旦浏览到PDB文件的位置,符号状态就会变为符号已加载,现在您应该能够在代码中设置并捕获断行点。
希望它有所帮助!答案 3 :(得分:1)
U。就我而言,我已经在IIS中映射了正确的文件夹,但是该应用程序是在IIS Express上设置的。
因此,当我转到URL时,正确的程序集将在其中加载,但是该应用程序已附加到从未受到任何点击的IIS Express版本中。
答案 4 :(得分:0)
在我的情况下,我从Git更新了我的仓库,项目从本地IIS更改为IIS Express(项目>属性> Web选项卡)。这在某种程度上搞砸了我的配置,我无法调试。
答案 5 :(得分:0)
通过将其设置为“启动项目”来解决了我的问题
解决方案资源管理器->右键单击项目->设置为启动项目
或
菜单栏->项目或网站->设置为启动项目