我已下载了一个示例mvc应用程序,该应用程序具有相当多的代码并且相当复杂。为了理解代码,我希望逐行完成所有代码,因为我通过gui完成基本功能。问题是我不总是确定代码执行的是哪一行,所以我不能总是设置一个断点。
有没有办法在visual studio 2008中逐行查看所有代码,而不设置断点?
答案 0 :(得分:1)
如果没有至少一个断点,我认为你无法做到。 在第一行代码上设置断点。
然后您可以step over
或step into
之后的每一行。
<强>更新强> 好的,RE你的评论:代码逐行执行顺序执行。我曾经看到它执行“乱序”的唯一一次是在激活某些编译器优化时使用Xcode。棘手的部分是代码仍然按顺序执行,但是优化使调试器搞砸了,使得看起来像它没有按顺序执行。
我想说看看Visual Studio的项目设置,并确保你没有玩过任何奇怪的编译器优化。你解释的内容不应该发生。
答案 1 :(得分:1)
不确定我是否理解正确,但您可以在达到第一行(有一个断点)后按F10,并按执行顺序逐步每一行。编辑:和F11“步入”。
答案 2 :(得分:1)
使用F10或F11启动项目。
答案 3 :(得分:1)
要尝试的一件事是向您在调用某些GUI操作时执行的特定函数添加一些断点。
然后,在调试器中断时检查调用堆栈,看看是否有任何公共库方法对每个调用堆栈都是通用的(即在调用堆栈的低端)。
那么也许你可以在库方法中添加一个断点来捕获所有的GUI操作。
答案 4 :(得分:1)
也许在应用程序启动事件中添加一行调用System.Diagnostics.Debugger.Launch()方法?
答案 5 :(得分:0)
回答这个问题为时已晚。但是,无论如何,如果有人还在寻找它,以防万一。尝试以下MVC项目选项。
global.asax
文件中检查RegisterRoutes
功能。并将断点放在MapRoute
方法中使用的所有操作上。security
,则可能会转到AccountController
的{{1}}方法。LogOn
运行项目并检查浏览器中的URL。其中一个选项应该有所帮助。