我有一个包含3个项目的解决方案,每个项目都需要访问某些设置.我正在寻找一种方法,让这些设置值可用于来自1个不同来源的任何项目.我不能使用.Config文件,因为这与该特定项目相关.
我可以使用数据库,但被告知这不是一个好习惯(没有理由)
有任何想法吗?
mar*_*c_s 10
你可以这样做:
solution.config在解决方案文件夹中创建一个在每个项目中app.config,将其添加到您的<appSettings>节点:
<appSettings file="solution.config">
....
</appSettings>
Run Code Online (Sandbox Code Playgroud)您必须solution.config在每个项目文件夹中放置符号链接到您的公共- 但您可以在项目中共享一个物理文件.
该<appSettings>节点是唯一允许这种"累积"设置的节点 - 来自该节目中指定的文件的节点file=将添加到您的应用程序设置中,但可能会被您明确指定的任何内容覆盖app.config.
另一方面,是的,当然,您可以使用数据库.我们在大多数项目中都这样做,因为我们通常可以访问数据库,但不能访问客户端服务器机器中的文件系统.我不明白为什么这应该是一件坏事 - 我们在表格中设置了DEV,TEST和PROD - 所以你将所有设置放在一个地方 - 我们在需要时选择我们需要的设置.工作得很好 - 当然,一些设置,如数据库的连接字符串不能存储在那里 - 但我们的配置信息的大部分是.再说一遍:我真的没有看到为什么这本身就是一个糟糕的选择 - 所以除非你的消息来源能够用一些事实和理由支持他/她的声明,否则我会忽略它.
| 归档时间: |
|
| 查看次数: |
2291 次 |
| 最近记录: |