保存文件'web.config'需要您停止调试会话错误

时间:2014-01-10 18:57:04

标签: asp.net visual-studio-2012 web-config

我正在尝试在运行应用程序后对web.config进行更改。它给出了以下错误。

  

保存文件'web.config'需要您停止调试会话   你想现在停止调试吗?

我正在使用Visual Studio 2012。

enter image description here

我认为它必须在visual studio中使用Enable Edit and Continue功能。仍然无效。

4 个答案:

答案 0 :(得分:9)

我只想在janv8000关于编辑和继续的评论中添加一些内容,因为我刚遇到同样的问题并设法对其进行排序。

为了给出一些背景知识,我在VS 2012中创建了一个现有的Web应用程序。当我在VS 2013中调试这个项目时,我可以愉快地编辑web.config文件而无需重新启动调试器。然后我在VS 2013中创建了一个新的Web应用程序,发现当我尝试编辑web.config文件时,我在原始问题中收到了错误消息。

解决方法是禁用单个项目的编辑并继续 。我强调这一点的原因是因为在Tools-> Options-> Debugger for Edit and Continue中有一个全局调试器设置。这不是导致此问题的选项。

要解决它:

  1. 转到Web应用程序的项目首选项(在解决方案资源管理器中右键单击它,然后转到“属性”)。
  2. 转到“网络”标签。
  3. 此标签底部是一个名为“调试器”的部分。
  4. 取消选中“启用编辑并继续”。

答案 1 :(得分:1)

首先让我指出一个快速的事实。这里有两种不同类型的项目。

  1. 由Visual Studio菜单中的select WebSite创建的New WebSite
  2. 通过选择WebApplication并选择New Project
  3. 创建ASP.Net Web Forms Appplication

    现在说明这一点的原因很简单。

    第一个选项允许您更改web.config而不执行应用程序重置(仅在调试时)。这是因为WebSite项目文件是在请求pages \ files时编译的。因此,每次请求页面时都会编译代码。这也是为什么你可以在调试时更改代码文件而没有任何问题。

    第二种类型是已编译的应用程序。因此,所有代码都在运行时之前编译。在这种情况下,AppPool(IIS,IISExpress)会监视对此文件的更改。如果此文件发生更改,应用程序必须重新启动才能使更改生效。现在没有办法阻止这种行为作为核心AppPool的一部分。

    以下摘自MSDN:

      

    配置更改导致重新启动应用程序域

         

    间接导致Web.config文件中配置设置的更改   要重新启动的应用程序域。此行为是通过设计发生的。您   可以选择使用configSource属性来引用外部   进行更改时不会导致重新启动的配置文件。   有关更多信息,请参阅常规属性继承中的configSource   按部分元素。

         

    尝试更改配置文件   没有编辑文件权限的人不会导致   重新启动应用程序域。

    完整的MSDN页面。 http://msdn.microsoft.com/en-us/library/ackhksh7.aspx

    正如它在这里陈述的那样,有一种方法。通过使用configSource引用外部配置文件,您可以毫无问题地进行更改。

    我希望这会有所帮助。

答案 2 :(得分:0)

实际上我在使用Visual Studio 2013的Web应用程序上遇到了同样的问题。在此之前我使用的是VS2010并且没有问题,如你所说。

我找到的解决方案是不使用IIS Express(:(我无法想象使用IIS Express)

1-只需右键单击您的项目,然后选择属性。

2-在“Web”选项卡上,选择页面“服务器”部分下的“本地IIS”。

3-单击“创建虚拟目录”按钮。

Viola,现在你已经使用端口80在iis上部署了它。(因此,当你运行inetmgr(IIS管理器)时,它将位于“默认网站”部分下,当然如果你没有在端口上运行任何其他站点80)

如果您需要自定义端口(即1234):

只需使用端口1234在IIS管理器上创建新站点,然后在VS2013的项目属性中编辑您的URL:“http://localhost:1234/Your.Project.Name

如果有人展示如何使用IIS Express编辑和继续web.config,也将不胜感激。

答案 3 :(得分:0)

在VS 2019中获得了相同的错误。以下内容为我修复了该错误: 转到“调试浏览器”列表(如屏幕截图所示),打开下拉菜单>“脚本调试”,然后将其禁用:

enter image description here