编辑并继续在VS 2010 / ASP.Net MVC 2中不起作用

时间:2010-05-28 06:37:08

标签: asp.net asp.net-mvc asp.net-mvc-2 edit-and-continue

虽然在我的ASP.Net MVC 2项目的Web选项卡上选中了Enable Edit and Continue,但实际上我无法在运行时更改源代码。例如,如果我在调试器中暂停时尝试编辑控制器,则无法更改文件(就像只读一样)。

我找到了相关的帖子Edit and continue in ASP.NET web projects,但是

  • 答案似乎表明我应该能够至少编辑代码,然后重新加载页面以查看结果。
  • 我不知道Web应用程序和网站项目之间的区别

4 个答案:

答案 0 :(得分:18)

区别在于,Web站点在执行时动态编译(甚至是后面的代码)时需要编译。

由于ASP.NET MVC每次进行更改时都使用Web应用程序,因此需要重新编译它并重新编译需要退出调试模式。实际上,您可以修改视图和部分而无需重新编译,但对于控制器逻辑,您始终需要重新编译。

为了加快速度,我建议您使用以下内容:

  1. 使用视图和部分(即做一些设计)时,使用 Ctrl + F5 而不是 F5 运行应用程序,这将只是以正常模式启动应用程序刷新浏览器时将自动获取您的更改
  2. 使用代码后,您应该进行相应的单元测试,以便快速检查行为。在这种情况下,在调试模式下运行可能会更有用,因为您可能需要检查值。

答案 1 :(得分:1)

使用Mvc,您无法编辑和继续。 但是如果您通过IISExpress运行项目,那么无需在调试模式下运行项目,您可以编辑代码隐藏,重建项目。然后在浏览器中刷新页面就可以了。

答案 2 :(得分:0)

继@ Darin的回答之后,我不得不说我不喜欢在跑步时能够改变代码的想法。

我认为我们应该有足够的纪律来编写反映预期结果的测试,编写代码然后进行实时测试。

尽管如此,我解决这个问题的方法是在浏览器中启动应用程序,然后运行,进行更改,编译然后刷新浏览器。

当然,我没有步进代码的好处,但我可以随时附加到工作进程。

答案 3 :(得分:0)

升级到VS2012。这确实支持ASP.Net项目的编辑和继续(从项目属性窗口的Web选项卡)。虽然默认情况下似乎没有启用它!