我在同一服务器上托管了两个Web项目,即一个站点的User&Admin Projects。我要动态更改“应用程序设置”(应用程序设置的键)的值
我知道如何在同一项目中以编程方式更改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();
答案 0 :(得分:1)
我得到的问题是,您只有一个代码库,并且需要为两个具有不同功能的应用程序实例提供服务。
首先在运行时修改web.config并不是一个好主意。
要具有基于一个代码库的两个应用程序实例,并使用单独的web.config,可以使用IIS的虚拟目录功能。 在IIS上使用两个web.config(分隔目录)创建两个Web应用程序,然后定义一个指向您的代码库的虚拟目录。
答案 1 :(得分:1)
在IIS 7+中,有一个C#API,可让您创建应用程序和修改配置。
文档在Microsoft.Web.Administration
我认为这段代码应该可以帮助您了解
metalFragmentShader
答案 2 :(得分:0)
您可以制作一个app_offline.htm
文件,该文件会使您的网站瘫痪。您所要做的就是将文件放在网站的根目录中,然后IIS会为您完成其余工作。您可以在app_offline.htm
上添加维护消息,并在用户仅看到app_offline.htm
页面时进行维护
如果您真的想通过编程进行操作。您可以在不需要该文件时将其重命名为其他名称,并在要删除该站点时将其重命名为app_offline.htm
。