我想存储一些关于给定网站实例的元信息,这些元信息可以(a)由该网站实例管理,以及(b)持久化Web.config文件。 该站点将在多个环境(开发,测试,登台和生产)中运行,并且每个环境可以具有该元数据的不同值。 注意:所有环境都运行IIS 7.0 +
Root Web.config似乎非常吸引人,因为它肯定在网站之外。因此,可以在维护元数据的同时更改文件和数据库。我已经看到了如何修改存储在网站中的Web.config的appSettings,但是是否可以类似地修改Root Web.config中的appSettings(特别是在正确的指令中)?
如果您有其他建议来解决这个问题,我会很高兴听到他们的意见。谢谢!
答案 0 :(得分:0)
是的,您可以在web.config中调整应用程序设置只需使用System.Web.Configuration命名空间中的WebConfigurationManager类来创建Configuration对象。然后,可以使用此对象读取和写入对web.config文件的更改。
然后,您可以根据需要创建自己的“键”或属性。
根据您的属性所代表的内容或者是否需要从该服务器的多个环境中获取它们,我还会考虑在machine.config文件中进行修改,因为这些设置将应用于输入计算机并因此被选中多个环境(如果您从服务器托管多个Web应用程序)。这可以节省您修改多个web.config文件的时间,并在某些情况下将存储或元数据分解为一个位置与多个配置文件。
答案 1 :(得分:0)
不会使用web.config进行运行时修改,这将导致应用程序回收,也许是某些其他形式的配置文件,如app.config
如果我的假设不正确并且在启动应用程序后不会编辑web.config,那么您可以使用WebConfigurationManager来访问文件部分