Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在ASP.NETMVC6中编辑和继续_C#_Asp.net Core_Visual Studio 2015_Asp.net Core Mvc - Fatal编程技术网

C# 如何在ASP.NETMVC6中编辑和继续

C# 如何在ASP.NETMVC6中编辑和继续,c#,asp.net-core,visual-studio-2015,asp.net-core-mvc,C#,Asp.net Core,Visual Studio 2015,Asp.net Core Mvc,在以前,使用旧版本的Visual Studio和ASP.NET可以在调试代码时对其进行编辑(即使有一些限制) 如何在VS 2015 RC中使用ASP.Net/VNext(MVC 6)启用编辑并继续。 此功能是否可用?我收到的信息是: “如果调试启动时未生成项目,则不允许进行更改” 调试模式启动时如何生成项目 在Visual Studio 2015中,此时“编辑并继续”不适用于ASP.NET 5应用程序,但计划在2015年最终版本中支持它 有关VS2015 ENC更改的更多信息,请查看以下博客:

在以前,使用旧版本的Visual Studio和ASP.NET可以在调试代码时对其进行编辑(即使有一些限制)

如何在VS 2015 RC中使用ASP.Net/VNext(MVC 6)启用编辑并继续。 此功能是否可用?我收到的信息是:

“如果调试启动时未生成项目,则不允许进行更改”


调试模式启动时如何生成项目

在Visual Studio 2015中,此时“编辑并继续”不适用于ASP.NET 5应用程序,但计划在2015年最终版本中支持它

有关VS2015 ENC更改的更多信息,请查看以下博客:

我得到了编辑,并继续在VS 2015中从事我的ASP.Net MVC 4项目。David R在他的回答中发布了一个链接(这里再次说明完整性)

该页面指出,若在运行时加载期间设置了环境变量,则VS2015支持在附加到进程时继续编辑。我的理解是,这个变量提示CLR分配一点额外的内存,这是编辑和继续工作所需要的

现在的诀窍是让运行应用程序池的w3wp.exe进程加载此变量。在任何其他进程中,我只需打开一个命令行

set COMPLUS_FORCEENC=1
ExeToDebug.exe
但是,我找不到一种方法直接使用环境变量运行我的应用程序池。我在这个页面上发布了一个解决方案(作为CSUdev),这是一个小技巧,它设置一个机器级环境变量,重置iis,调用一个启动应用程序池的url,然后清除机器级环境变量。

该线程中的OP表示,他曾通过为用户配置文件设置环境变量,使其在IIS的早期版本中工作,应用程序池将在加载其用户配置文件时加载该用户配置文件,尽管他无法在IIS8中工作(可能与操作系统中的WS2012/Win8安全设置有关)

tldr;下面是我如何让它工作的

写蝙蝠脚本

#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。
砰。编辑并继续。谢谢各位女士和VS2015

安装此服务更新后,MVC 6项目的VS 2015 Update 1似乎已修复此问题

我有ASP.NET MVC5,并意识到如果使用IIS Express,“编辑并继续”的工作方式非常简单

“本地IIS”不起作用,但没有尝试Matrixuly帖子中的“COMPLUS_FORCEENC”设置


由于此原因,最终切换到IIS Express进行调试。

David,何时编辑并继续的任何更新都会自动显示?我试过dnx手表,但它不工作。工作的是nodemon,但是重新启动dnxweb调用的速度非常慢。“这可能不是问这个问题的最佳地点,但值得一试。@StuartAllen有什么运气或新信息吗?”?谷歌没有提供太多帮助。@StuartAllen我想ENC将在ASP.NET 5的RTM版本中提供,或者可能在下一个RC版本中提供。在RC1中,它仍然不起作用。虽然这是推测性的,但我也没有发现任何官方声明。我仍然没有为我工作,我不得不暂时回到旧模式,没有ENC对我的流量来说是一场噩梦。每次编辑前端代码都要重新启动dnx太慢了。老鼠。。。你可以从我的答案猜出来,这是用.NET4.5。。。不确定这将如何在.Net Core和asp.Net Core等上工作。。。但希望这对某些人还是有帮助的。尽管在这里尝试了一切,但编辑并继续对我来说不起作用。但是,您的脚本使其工作:)我必须做的唯一额外的事情是确保在“工具”>“选项”>“调试”>“常规”>“要求源文件与原始版本完全匹配”下未选中。遗憾的是,它对我不起作用。我验证了env变量是否已设置,我已取消选中“要求源文件与原始版本完全匹配”,并已将项目类型切换为x86。但仍然没有成功。我只能让它与IIS Express一起工作。就我个人而言,我只是通过环境变量->系统变量设置COMPLUS\u FORCEENC=1