配置asp.net Web应用程序.最佳做法

And*_*rko 5 asp.net configuration

网站有很多可配置的信息:

  • UI消息
  • 分页和其他UI参数中使用的记录数
  • 网页和超时的缓存持续时间
  • 路线图和站点结构
  • ...

存储所有这些信息的方法有很多种:

  • AppSettings(web.config)
  • 自定义部分(web.config)
  • 从web.config引用的外部xml /文本文件
  • 常量的内部静态类
  • 数据库表
  • ...

您通常选择哪些方法来完成任务?您认为哪些方法不合适?

先感谢您!

der*_*rek 2

这些都是非常主观的,取决于您拥有的网站类型,但以下是我的两点意见:

UI 消息- 如果是多语言的,请将它们存储在资源文件中

分页和其他 UI 参数中使用的记录数- 我喜欢让用户可以选择它,如果使用 jquery 来执行此操作,则插件(例如tablesorter和tablesorter.pager)可以轻松实现

网页的缓存持续时间和超时- 实际上取决于数据的时间敏感性。如果内容更新频繁,您可能不希望长时间缓存它。但是,如果有大量代码来检索和组织数据,您可能希望将其缓存更长时间以提高性能。

路线图和站点结构- 实际上取决于您拥有的站点类型以及它是否会给用户带来好处

AppSettings (web.config) - 适用于不会经常更改或特定于该安装的常量和项目,例如基本 url、webservice url、google api 密钥等

自定义部分 (web.config) - 对于不太符合字典格式的设置(一键对应一值)非常有用。

从 web.config 引用的外部 xml/文本文件- 我将此作为最后的手段,可能是首选,但我讨厌在网站上使用文件 I/O。

常量的内部静态类- 存储从数据库加载的设置的好方法,以避免每次需要值时都命中数据库

数据库表- 当使用数据库表进行设置时,我更喜欢将它们加载到静态类中并定期刷新它,以避免每次需要数据时都必须访问数据库