未能映射路径'/';使用asp.net开发服务器

未能映射路径'/';使用asp.net开发服务器,asp.net,Asp.net,我使用以下代码在运行时更改web.config Configuration conf = WebConfigurationManager.OpenWebConfiguration("~/"); conf.ConnectionStrings.ConnectionStrings["ApplicationServices"].ConnectionString = "Test"; conf.Save(); 但我得到了一个错误——“未能映射路径“/”。我在互联网上搜索并研究了所有解决方案,如 1

我使用以下代码在运行时更改web.config

Configuration conf = WebConfigurationManager.OpenWebConfiguration("~/");
conf.ConnectionStrings.ConnectionStrings["ApplicationServices"].ConnectionString = "Test";
    conf.Save();
但我得到了一个错误——“未能映射路径“/”。我在互联网上搜索并研究了所有解决方案,如 1.将路径更改为“/” 2.将路径更改为“~/”


但同样的问题也发生了。有一点我想说的是,我的应用程序不是托管在IIS上的,而是通过VisualStudio运行的,使用asp.net开发服务器将
~
替换为
HttpContext.Current.Request.ApplicationPath

i、 e

conf=WebConfigurationManager.OpenWebConfiguration(HttpContext.Current.Request.ApplicationPath)

~
应该可以工作,我建议
ApplicationPath
确保在IIS而不是VS DevServer上托管虚拟目录时存在差异

事实上,如果您在根目录中以
web.config
为目标,则只需将
null
作为参数传递即可。无需传递
~

编辑:


你是以行政特权工作的吗?要在VS Development Server上工作,您必须以管理员权限启动Visual Studio。右键单击Visual Studio并以管理员身份运行

~
替换为
HttpContext.Current.Request.ApplicationPath

i、 e

conf=WebConfigurationManager.OpenWebConfiguration(HttpContext.Current.Request.ApplicationPath)

~
应该可以工作,我建议
ApplicationPath
确保在IIS而不是VS DevServer上托管虚拟目录时存在差异

事实上,如果您在根目录中以
web.config
为目标,则只需将
null
作为参数传递即可。无需传递
~

编辑:


你是以行政特权工作的吗?要在VS Development Server上工作,您必须以管理员权限启动Visual Studio。右键单击Visual Studio并
以管理员身份运行

您好,我仍然面临着相同的问题。我在web.config中又添加了一项内容,因为我在一个线程中读到应该在IIS中启用此设置。因此,为了为单个应用程序启用此设置,我在web.configStart Visual Studio中做了此更改,并使用
以管理员身份运行。更新了我的答案。非常感谢。但我不知道该怎么回答这个问题,
HttpContext.Current.Request.ApplicationPath
在开发期间和部署到IIS时都能工作。您好,我仍然面临同样的问题。我在web.config中还做了一个添加,因为我在一个线程中读到应该在IIS中启用此设置。因此,为了为单个应用程序启用此设置,我在web.configStart Visual Studio中做了此更改,并使用
以管理员身份运行。更新了我的答案。非常感谢。但我不知道如何回答这个问题。事实上,
HttpContext.Current.Request.ApplicationPath
在开发期间和部署到IIS时都能工作。