1

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

Configuration conf = WebConfigurationManager.OpenWebConfiguration("~/");
conf.ConnectionStrings.ConnectionStrings["ApplicationServices"].ConnectionString = "Test";
    conf.Save();

但我收到一个错误 - “无法映射路径'/'。” 我在互联网上搜索并研究了所有解决方案,例如 1. 将路径更改为“/” 2. 将路径更改为“~/”

但发生了同样的问题。我想说的一点是我的应用程序不是托管在 IIS 上,而是通过使用 asp.net 开发服务器的视觉工作室运行

4

1 回答 1

1

替换~HttpContext.Current.Request.ApplicationPath

IE

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

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

事实上,如果你的目标web.config是root,那么你只需要null作为参数传递。无需通过~

编辑:

您是否使用管理权限?要在 VS Development Server 上运行,您必须以管理员权限启动 Visual Studio。右键单击 Visual Studio 和Run As Administrator.

于 2013-10-01T13:02:26.137 回答