如何在 ASP.Net MVC 6 中编辑和继续
How to Edit and Continue in ASP.Net MVC 6
在使用旧版本 Visual Studio 和 ASP.NET 的日子里,您可以在调试代码时编辑代码(即使有一些限制)。
如何启用编辑并继续使用 ASP.Net/VNext (MVC 6) 和 VS 2015 RC。
这个功能可用吗?我收到的消息是:
"Changes are not allowed if the project wasn't built when debugging started".
如何在调试模式启动时构建项目?
编辑并继续在 Visual Studio 2015 年此时不适用于 ASP.NET 5 个应用程序,但计划在 2015 年最终版本中支持它。
有关 VS2015 ENC 更改的更多信息,请查看此博客条目:
http://blogs.msdn.com/b/visualstudioalm/archive/2015/04/29/net-enc-support-for-lambdas-and-other-improvements-in-visual-studio-2015.aspx
我在我的 ASP.Net MVC 4 项目上得到了编辑并继续在 VS 2015 中工作。 David R 在他的回答中发布了 link(为了完整起见,这里再次发布)
该页面表示,如果在 运行 加载期间设置了环境变量,VS2015 支持在 Attach To Process 上继续编辑。我的理解是,这个变量在 CLR 中提示分配一些额外的内存,这是编辑和继续工作所需的。
现在的诀窍是让 w3wp.exe 进程 运行 使用此变量加载您的应用程序池。在任何其他进程中,我只需打开命令行并执行
set COMPLUS_FORCEENC=1
ExeToDebug.exe
但我无法找到直接 运行 我的带有环境变量的应用程序池的方法。我在此页面上发布了一个解决方法(作为 CSUdev),这是一个设置机器级环境变量、重置 iis、调用启动应用程序池的 url 的小技巧,然后清除机器级环境变量。
http://forums.iis.net/p/1195182/2115550.aspx?p=True&t=635895941266217500
该线程中的 OP 表示,他过去常常通过为用户配置文件设置环境变量来在 IIS 的早期版本中工作,应用程序池随后会在加载用户配置文件时加载该变量,尽管他无法做到在 IIS8 中工作(可能与 OS 中的 WS2012/Win8 安全设置有关)。
tldr;这是我的工作方式
写了bat脚本...
#set Edit n Continue variable (global... :/ )
setx /m COMPLUS_FORCEENC 1
#kill/restart existing app pools
iisreset
#force app pool to start up (and use the Edit & Continue var)
#you can download wget or curl (instead of start)
#if you don't want this to open up your default browser every time
start "http://localhost/urlForAspNetApp"
#clear Edit n Continue var
setx /m COMPLUS_FORCEENC ""
然后 VS2015 附加到进程 w3wp.exe。
砰。编辑并继续。感谢 MS 和 VS2015 的朋友们!
安装此服务更新后,MVC 6 项目的 VS 2015 Update 1 似乎已修复此问题https://www.microsoft.com/en-us/download/details.aspx?id=50723
我有 ASP.NET MVC5 并且意识到如果您使用 IIS Express "Edit and Continue" 几乎可以开箱即用。
使用 "Local IIS" 它不起作用,虽然没有尝试 matrixugly 的 post 中的 "COMPLUS_FORCEENC" 设置。
因此最终切换到 IIS Express 进行调试。
在使用旧版本 Visual Studio 和 ASP.NET 的日子里,您可以在调试代码时编辑代码(即使有一些限制)。
如何启用编辑并继续使用 ASP.Net/VNext (MVC 6) 和 VS 2015 RC。 这个功能可用吗?我收到的消息是:
如何在调试模式启动时构建项目?
编辑并继续在 Visual Studio 2015 年此时不适用于 ASP.NET 5 个应用程序,但计划在 2015 年最终版本中支持它。
有关 VS2015 ENC 更改的更多信息,请查看此博客条目: http://blogs.msdn.com/b/visualstudioalm/archive/2015/04/29/net-enc-support-for-lambdas-and-other-improvements-in-visual-studio-2015.aspx
我在我的 ASP.Net MVC 4 项目上得到了编辑并继续在 VS 2015 中工作。 David R 在他的回答中发布了 link(为了完整起见,这里再次发布)
该页面表示,如果在 运行 加载期间设置了环境变量,VS2015 支持在 Attach To Process 上继续编辑。我的理解是,这个变量在 CLR 中提示分配一些额外的内存,这是编辑和继续工作所需的。
现在的诀窍是让 w3wp.exe 进程 运行 使用此变量加载您的应用程序池。在任何其他进程中,我只需打开命令行并执行
set COMPLUS_FORCEENC=1
ExeToDebug.exe
但我无法找到直接 运行 我的带有环境变量的应用程序池的方法。我在此页面上发布了一个解决方法(作为 CSUdev),这是一个设置机器级环境变量、重置 iis、调用启动应用程序池的 url 的小技巧,然后清除机器级环境变量。 http://forums.iis.net/p/1195182/2115550.aspx?p=True&t=635895941266217500
该线程中的 OP 表示,他过去常常通过为用户配置文件设置环境变量来在 IIS 的早期版本中工作,应用程序池随后会在加载用户配置文件时加载该变量,尽管他无法做到在 IIS8 中工作(可能与 OS 中的 WS2012/Win8 安全设置有关)。
tldr;这是我的工作方式
写了bat脚本...
#set Edit n Continue variable (global... :/ )
setx /m COMPLUS_FORCEENC 1
#kill/restart existing app pools
iisreset
#force app pool to start up (and use the Edit & Continue var)
#you can download wget or curl (instead of start)
#if you don't want this to open up your default browser every time
start "http://localhost/urlForAspNetApp"
#clear Edit n Continue var
setx /m COMPLUS_FORCEENC ""
然后 VS2015 附加到进程 w3wp.exe。 砰。编辑并继续。感谢 MS 和 VS2015 的朋友们!
安装此服务更新后,MVC 6 项目的 VS 2015 Update 1 似乎已修复此问题https://www.microsoft.com/en-us/download/details.aspx?id=50723
我有 ASP.NET MVC5 并且意识到如果您使用 IIS Express "Edit and Continue" 几乎可以开箱即用。
使用 "Local IIS" 它不起作用,虽然没有尝试 matrixugly 的 post 中的 "COMPLUS_FORCEENC" 设置。
因此最终切换到 IIS Express 进行调试。