我记得在
Scott Gu’s Razor announcement中提到了对Razor视图的完全调试器支持;我很高兴能够在Razor视图中设置断点,也遇到了无法在视图中设置断点,只是很快意识到它是一个ASPX视图. :P
有时我无法帮助/改变现有视图使用ASPX视图引擎:有没有一种方法我还没学会在ASPX视图中设置断点?如果没有,那么下一个最好的东西是什么?是否有比Debugger.Break()更好的解决方法并在调试后还原?
解决方法
与流行的看法相反,您实际上可以在ASPX视图中设置断点.
在Visual Studio中,您可以将光标导航到所需位置,按F9(切换断点)并完成.
它可以在Razor和ASPX视图中完成,甚至可以在ASPX页面(在WebForms中)中完成.
如果你不能在那里设置断点,那意味着给定的部分不是C#代码而是HTML部分.您无法在< span>等部分设置断点,只能在愚蠢的<%和%>之间设置断点.部分(在Razor中它是@ {…},@(…)或只是@ …).
还要确保构建应用程序,并将调试器附加到服务器实例(如果它在IIS Express上切换到项目属性中的Development Server,反之亦然).
停止任务栏上的开发服务器实例,重建项目并重新启动它.它应该打破断点就好了.