首页 > 解决方案 > 在 C# 中以编程方式更改远程 web.config

问题描述

我有两个 Web 项目托管在同一台服务器上,即一个站点用户和管理员项目。我想动态更改应用程序设置的值(应用程序设置的键)

我知道如何在同一项目中以编程方式更改值 web.config 值。但是项目有什么不同,

System.Configuration.ExeConfigurationFileMap configFile = new System.Configuration.ExeConfigurationFileMap();
configFile.ExeConfigFilename = "ConsoleTester.exe.config";  //name of your config file, can be from your app or external
System.Configuration.Configuration config = System.Configuration.ConfigurationManager.OpenMappedExeConfiguration(configFile, System.Configuration.ConfigurationUserLevel.None);
System.Configuration.KeyValueConfigurationCollection settings = config.AppSettings.Settings;
settings["DD"].Value = "007_Access";
config.Save();

标签: c#asp.netweb-config

解决方案


我从你的问题中得到的是,你有一个代码库,你需要为两个具有不同功能的应用程序实例提供服务。

首先,在运行时修改 web.config 并不是一个好主意。

要拥有基于一个代码库的两个应用程序实例,并具有单独的 web.config,您可以使用 IIS 的虚拟目录功能。使用两个 web.config(分隔目录)在 IIS 上创建两个 Web 应用程序,然后定义一个指向您的代码库的虚拟目录。


推荐阅读