这是我的c#代码:
System.Configuration.Configuration config =
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~/Web.config");
ConfigurationSection section = config.GetSection("appSettings");
section.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider");
section.SectionInformation.ForceSave = true;
config.Save(ConfigurationSaveMode.Modified);
string sectionXml = section.SectionInformation.GetRawXml();
我需要以编程方式加密web.config
,但它给了我错误:
无法为请求的配置对象创建配置文件。
答案 0 :(得分:3)
错误发生在~/web.config
上,OpenWebConfiguration
需要完整的应用程序路径,而不是web上显示的web.config名称。
试试这个(测试并为开场工作):
OpenWebConfiguration(HttpContext.Current.Request.ApplicationPath);
或(基于msdn示例代码)
OpenWebConfiguration(/web.config);
甚至可以将 null 称为MSDN notes。