【发布时间】:2008-11-20 17:39:22
【问题描述】:
在我们的 Web 应用程序中,我们将数据访问层分离到它们自己的项目中。
这会产生一些与设置相关的问题。
因为 DAL 最终可能需要从多个应用程序中使用,所以 web.config 似乎不是保存连接字符串和其他一些 DAL 相关设置的好地方。
为了解决这个问题,在我们最近的一些项目中,我们引入了第三个项目,仅用于设置。我们将设置放在一个 .Setting 文件的系统中......通过一个简单的包装器,可以轻松实现为各种环境(Dev、QA、Staging、Production 等)进行不同设置的能力。
唯一的问题是设置项目(包括 .Settings 类)编译为程序集,因此您无法在不进行构建/部署的情况下更改它,并且我们的一些客户希望能够配置他们的没有 Visual Studio 的项目。
那么,有没有最佳实践呢?我有这种感觉,我正在重新发明轮子。
我们想到了一些解决方案,例如将设置以我们自己的 XML 格式存储在服务器上的固定目录中。但同样,我宁愿避免为敏感值等重新创建加密。如果可能的话,我宁愿让解决方案独立。
编辑:最初的问题没有包含我们不能(我认为)使用 web.config 的真正深刻的原因......这使一些(非常好的)答案脱离了上下文,我的错。
【问题讨论】:
标签: asp.net web-config configuration-files