C# 代码Behing更新web.config映射问题

C# 代码Behing更新web.config映射问题,c#,asp.net,configuration,asp.net-3.5,C#,Asp.net,Configuration,Asp.net 3.5,我需要更新我的web.config,从后面的代码中删除。这从来都不是一个问题,但我最近得到了一个错误。错误显示“映射路径“/”失败。” 注释掉的行是我尝试的不同变体 //Configuration myWebConfig = WebConfigurationManager.OpenWebConfiguration(Server.MapPath("~")); //Configuration myWebConfig = WebConfigurationManager.OpenWebC

我需要更新我的web.config,从后面的代码中删除。这从来都不是一个问题,但我最近得到了一个错误。错误显示“映射路径“/”失败。” 注释掉的行是我尝试的不同变体

//Configuration myWebConfig = WebConfigurationManager.OpenWebConfiguration(Server.MapPath("~"));
        //Configuration myWebConfig = WebConfigurationManager.OpenWebConfiguration("~");
        //Configuration myWebConfig = WebConfigurationManager.OpenWebConfiguration(null);
        Configuration myWebConfig = WebConfigurationManager.OpenWebConfiguration(".");
        // update pages theme
        RoleManagerSection section = (RoleManagerSection)myWebConfig.GetSection("system.web/roleManager");
        section.DefaultProvider = "SqlRoleManager";
        section.Providers.Clear();
        ProviderSettings providerSettings = new ProviderSettings();
        providerSettings.Name = "SqlRoleManager";
        providerSettings.Type = "System.Web.Security.SqlRoleProvider";
        providerSettings.Parameters.Clear();
        providerSettings.Parameters.Add("connectionStringName", "SimpleTickConnection");
        providerSettings.Parameters.Add("applicationName", "TheaterSales");
        section.Providers.Add(providerSettings);
        myWebConfig.Save();

乍一看,尝试创建WebConfiguration Manager.OpenWebConfiguration(“.”);指向实际的配置文件,如web.config

OpenWebConfiguration(“web.config”)


如果需要,请确保还包括路径

我找到了错误的原因。将站点从我的本地C:drive移动到western digital passport并运行应用程序后,错误开始出现。下面的代码行很好:

Configuration myWebConfig = WebConfigurationManager.OpenWebConfiguration("~/");

文件路径“~/”表示Web应用程序的根文件夹。“~”和
null
对方法没有任何意义;“”是指当前(即,
bin
)文件夹。

当我从Windows Vista切换到Windows 7时,它发生在我身上。Windows 7的默认安全性导致此问题,因为VS没有打开该文件的权限。我只是以管理员的身份重新启动了VisualStudio,就这么简单。
我希望它能帮助其他人。

我找到了错误的原因。将站点从我的本地C:drive移动到western digital passport并运行应用程序后,错误开始出现。下面的代码行很好:Configuration myWebConfig=WebConfigurationManager.OpenWebConfiguration(“~/”);