我有两个项目,每个项目都有一个WebConfig文件,我想从一个地方编辑这两个webconfig文件,并尝试这样做:
string configPath = "/WebSite Name";
Configuration confUI = WebConfigurationManager.OpenWebConfiguration("~");
Configuration confProtocol = WebConfigurationManager.OpenWebConfiguration(configPath);
AppSettingsSection appSettingsUI = (AppSettingsSection)confUI.GetSection("appSettings");
AppSettingsSection appSettingsProtocol = (AppSettingsSection)confProtocol.GetSection("appSettings");
if (appSettingsUI != null & appSettingsProtocol != null)
{
appSettingsUI.Settings[key].Value = value;
appSettingsProtocol.Settings[key].Value = value;
confUI.Save();
confProtocol.Save();
}我也试着
Configuration confProtocol = WebConfigurationManager.OpenWebConfiguration(configPath,"webSiteName");confProtocol设置为空的问题。
如何在UI项目中设置协议项目的WebConfig路径?
发布于 2010-05-03 21:17:13
//您的代码很好,但需要稍微修改一下
string appName = Environment.GetCommandLineArgs()[2];//这应该返回当前站点的虚拟路径,例如:"e:\Code\ website“//删除最后一个网站并添加第二个网站
string configFile = string.Concat(appName, "web.config");
ExeConfigurationFileMap configFMap = new ExeConfigurationFileMap();
configFMap.ExeConfigFilename = configPath;
Configuration confProtocol = ConfigurationManager.OpenMappedExeConfiguration(configFMap, ConfigurationUserLevel.None);
string configPath = "/WebSite Name";
Configuration confUI = WebConfigurationManager.OpenWebConfiguration("~");
Configuration confProtocol = WebConfigurationManager.OpenWebConfiguration(configPath);
AppSettingsSection appSettingsUI = (AppSettingsSection)confUI.GetSection("appSettings");
AppSettingsSection appSettingsProtocol = (AppSettingsSection)confProtocol.GetSection("appSettings");
if (appSettingsUI != null & appSettingsProtocol != null)
{
appSettingsUI.Settings[key].Value = value;
appSettingsProtocol.Settings[key].Value = value;
confUI.Save();
confProtocol.Save();
}发布于 2010-05-03 20:11:28
嗯。我想检查"~“路径和"configPath”将是一个很好的起点。
发布于 2010-05-03 20:22:42
如果需要根web.config,只需将null传递给OpenWebConfiguration即可。
Configuration confProtocol = Configuration.OpenWebConfiguration(null);如果它们位于不同的主机中,则需要指定主机。
Configuration confProtocol = WebConfigurationManager.OpenWebConfiguration(configPath,"Protocol Web Site"); https://stackoverflow.com/questions/2757831
复制相似问题