【问题标题】:Is it safe to store appSettings programmatically from appSettings web.config从 appSettings web.config 以编程方式存储 appSettings 是否安全
【发布时间】:2013-12-12 01:55:35
【问题描述】:

我听说在生产环境中更改配置值而不回收应用程序池是个好主意。

但是,更改会触及 web.config 并导致此 *无论如何。*

如果无法避免应用池回收,以编程方式存储 appSettings 是否会降低灵活性或降低健壮性?

例如在伪代码中:

Application_Start() {
  AppSettingHelper.EmailOnException = ConfigurationManager.AppSettings[key];
}

然后,我使用:AppSettingHelper.EmailOnException

【问题讨论】:

    标签: asp.net asp.net-mvc iis application-pool appsettings


    【解决方案1】:

    Web.config 仅用于设计时。如果您的应用程序在运行时更改了它的设置,您应该真的考虑将这些设置存储在其他地方,例如数据库中。

    更改 web.config 文件将导致应用程序重新编译,您将丢失所有静态变量值和其他内容。这也会给用户造成暂时的延迟。您还必须管理文件的并发更新。

    当您更改web.config 文件时,您会以某种方式更改应用程序源代码。

    查看此线程以了解存储用户设置的可能性:What is the best way to store user settings for a .NET application?

    【讨论】:

    • 感谢您的回复。我正在使用环境文件观察器/交换器系统将这些东西保留在源代码控制之外。我想我主要是好奇什么是行业标准,将关键配置存储在 appSettings 中并忍受应用程序池回收。
    • 我明白了。好吧,行业标准并没有改变用户设置的 web.config 文件:)
    • 谢谢。有什么建议吗?
    • 对不起,我忘记了你。看看这个线程:stackoverflow.com/questions/26369/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-19
    • 2012-01-06
    • 2016-12-27
    • 2011-09-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多