在Web上修改指定文件位置的Web.config

这里需要使用 WebConfigurationManager 类,但必须使用WebConfigurationFileMap类来指定文件位置,看代码:

long appId = 123;

 

 //修改网站的配置文件

 var configFile = new FileInfo(configFilePath);

 var vdm = new VirtualDirectoryMapping(configFile.DirectoryName, true, configFile.Name);

 var wcfm = new WebConfigurationFileMap();

 wcfm.VirtualDirectories.Add("/", vdm);

 var config = WebConfigurationManager.OpenMappedWebConfiguration(wcfm, "/", siteName);

 AppSettingsSection appSection = (AppSettingsSection)config.GetSection("appSettings");

 appSection.Settings["abc"].Value = "system tag";

 appSection.Settings["appId"].Value = appId.ToString();

 config.Save();

 

 上面的代码参考自 stackoverflow ,但是OpenMappedWebConfiguration 必须指定第3个参数,否则会报错。不过,siteName 并不要求与IIS的站点名字对应,随意写一个也可以。

 

相关内容推荐

返回
顶部