c# - Web 应用程序配置设置 - 最佳实践

标签 c# asp.net configuration

我最近参与了一个 Web 应用程序项目的修补,并注意到以前的开发人员使用数据库表进行配置设置而不是 web.config (app.settings)。

我应该使用哪个? web.config 或数据库表?哪个最好?

最佳答案

在以下情况下,应该进入 web.config:

  • 它们是使数据库可用所必须的东西(数据库连接字符串!)

  • 如果它们发生变化,您希望应用程序池刷新,或者极不可能发生变化。

  • 它们是当数据库因任何原因不可用时需要可用的东西(例如电子邮件地址列表和用于发送错误消息的 smtp 服务器,或日志文件所属的位置)

在以下情况下应该将事物放入数据库:

  • 您的数据库和 Web 层都使用该配置。

  • 您需要能够即时更改配置,而无需强制刷新应用程序池。

就是说 - 如果您打算将您的配置放入数据库中,您可能希望以某种方式将其缓存在 Web 层中,这样您就不会不必要地访问数据库。为此,我建议使用 Cache 类。

除了上述所有内容之外,您还需要考虑贵公司的服务器使用政策。如果使用数据库对您来说非常非常困难,那么将内容放在 web.config 中可能更有意义,反之亦然。

关于c# - Web 应用程序配置设置 - 最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4379198/

相关文章:

c# - 是否可以在派生类中添加 XmlIgnore 属性?

javascript - 如何阻止机器人抓取我基于 AJAX 的 URL?

configuration - redis集群不同的机器

configuration - 通过配置管理器从 AppSettings 中获取 StringCollection

c# - 为什么 ApiAuthorization 在 .NET 5 中不起作用

c# - 安装有效但无法运行该应用程序

c# - 为什么表的第二行不会被写入?

c# - SignalR 广播消息在停止/启动后重复

asp.net - IIS 应用程序池和 WAS 自动停止,事件 ID 为 5189

ruby-on-rails - 处理应用程序配置的最佳实践是什么?