编辑并继续在VS 2010 / ASP.NET MVC 2中不起作用
-
05-10-2019 - |
题
尽管在我的ASP.NET MVC 2项目的Web选项卡上检查了启用编辑和继续,但实际上我在运行时无法更改源代码。例如,如果我尝试在调试器中暂停时编辑控制器,则无法更改文件(就像仅读取一样)。
我找到了一个相关的帖子 编辑并继续在ASP.NET Web项目中, , 然而
- 答案似乎暗示我应该至少编辑代码,然后重新加载页面以查看结果。
- 我不知道Web应用程序和网站项目之间的区别是什么
解决方案
区别在于,在执行时动态编译网站时需要编译Web应用程序(甚至背后的代码)。
由于ASP.NET MVC每次进行更改时都使用Web应用程序,因此需要重新编译并进行重新编译需要离开调试模式。确实,您可以在不需要重新编译的情况下修改视图和部分,但是对于控制器逻辑,您总是需要重新编译。
为了加快事情,我会建议您以下内容:
- 在使用视图和部分(即做一些设计工作)时,请运行该应用程序 CTRL+F5 代替 F5 它将仅以正常模式启动应用程序,然后在您刷新浏览器时自动拾取您的更改
- 与之合作时 背后的代码 您应该进行相应的单元测试,以便您快速检查行为。在这种情况下,在调试模式下运行可能会更有用,因为您可能需要检查值。
其他提示
使用MVC,您无法编辑并继续。但是,如果您通过iisexpress运行该项目,那么如果不以调试模式运行项目,则可以编辑CodeBehind,而是重建项目。然后刷新浏览器中的页面将工作。
除了 @darin的回答外,我不得不说我不喜欢能够在运行时更改代码的想法。
我认为我们应该受到足够的纪律,以编写反映预期结果,编写代码然后实时测试的测试。
话虽如此,但我解决的方式就是在浏览器中启动应用程序,然后进行浏览器运行,进行更改,编译,然后刷新浏览器。
当然,我没有踏入代码的好处,但是我可以随时连接到工作过程。
升级到VS2012。这确实支持编辑并继续用于ASP.NET Projects(从“项目属性”窗口中的“ Web”选项卡)。尽管默认情况下似乎没有启用它!
不隶属于 StackOverflow