使用多个Web配置C#
我有两个项目,每个项目都有一个WebConfig文件,我想从一个地方编辑这两个WebConfig文件,我尝试这样做:使用多个Web配置C#,c#,C#,我有两个项目,每个项目都有一个WebConfig文件,我想从一个地方编辑这两个WebConfig文件,我尝试这样做: string configPath = "/WebSite Name"; Configuration confUI = WebConfigurationManager.OpenWebConfiguration("~"); Configuration confProtocol = WebConfigurationManager.OpenWebConfigur
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路径?Hm。我想检查“~”路径和“configPath”将是一个很好的起点。如果您想要根web.config,只需将null传递给OpenWebConfiguration即可
Configuration confProtocol = Configuration.OpenWebConfiguration(null);
如果它们位于不同的主机中,则需要指定主机
Configuration confProtocol = WebConfigurationManager.OpenWebConfiguration(configPath,"Protocol Web Site");
//您的代码很好,但需要稍加修改
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();
}
感谢重播如何设置“configPath”?两个站点是否位于同一个站点中?