【发布时间】:2010-10-29 13:25:55
【问题描述】:
对于 CMS 产品/平台,编辑和存储设置的可维护且清晰的方法是什么?
我不是在谈论技术(connstring,nh config,...)设置,而是改变产品行为的设置:
这些设置例如
- 在线支付设置
- 可用部件和模块
- 应用程序的默认行为(默认显示列表项的详细信息,某些操作后的默认登录页面)
- ...
此时我们还没有真正的方法,所以结果是所有设置都在 web.config 中。
这可能不是最好的方法,因为这只是以无穷无尽的模糊键值对列表结束...
在这种情况下,我们也无法真正预期类型(没有代码生成),因此带有复选框或预定义选项的设置......很难管理。
另一种选择是为每个设置(类型)创建所需的表并将其用作核心设置系统,但这将更难为每个客户进行部署和管理。
我对这个问题有很多一半的答案,但不是真正的自上而下的解决方案......
我的意思是自上而下:
- 编辑设置(管理屏幕)
- 保存设置的位置
- 加载设置,没有太多麻烦,但仍以可维护的方式进行
- 维护/部署客户特定设置
到目前为止的选择:
- (web).config
- .settings 文件
- 数据库
但这些都是键值方法......还有其他建议吗?
【问题讨论】:
-
收到一些意见后,我还想看看有些人如何在他们的 MVC 应用程序中实现和访问这些设置。静态设置类?设置存储库连接到缓存?其他选择?
-
我在 P&P (apparchguide.codeplex.com) 中找到了有关该主题的一些非常高级的指导,但那里列出了相同的问题,而不是实际的实施指南。虽然我不是在寻找灵丹妙药,但必须有一些行之有效的方法?