【问题标题】:Select web.config or app.config Connection String based on Machine Name根据机器名称选择 web.config 或 app.config 连接字符串
【发布时间】:2016-09-22 09:43:05
【问题描述】:

这个问题与之前提出的Choose settings based on machine name 大致相关,但我有一个更具体的用途,我希望它默认融入.Net。

我是编写 DotNet 桌面和 Web 应用程序的小团队中的几个人之一。我们使用 git 作为源存储库,必须不断更改每个开发环境的 .config 文件连接字符串变得很烦人。

我知道有几种方法可以解决这个问题;范围从不首先将 .config 文件存储在 repo 中(并使用 .gitignore),到编写代码以手动添加前缀等解析配置文件,如另一个问题中所建议的那样。

但是,这似乎过于简单和乏味;在生产环境中,在配置文件中存储多个连接字符串可能有很多正当理由——例如拥有多个服务器——这让我认为必须有一种更简单的方法来做到这一点。

所以我的问题是这样的:DotNet .config 文件中是否有办法让框架“自动”知道要根据属性(例如环境)加载哪个连接字符串还是机器名?

【问题讨论】:

    标签: asp.net .net web-config app-config


    【解决方案1】:

    一个明确的问题:config transforms 是否有不符合此要求的内容?根据构建配置管理器设置(环境)设置活动解决方案配置并根据需要替换节点。我们一直在为 Web、控制台和服务项目这样做。非常适合 web(内置)和其他(带有一些小的后期构建调整)。

    【讨论】:

    • 哇,哇。相信微软有这样一种过度设计的方式来做一些简单的事情。那篇文章看起来正是我要找的,但它让我头疼,让我睡着了!我希望有一些非常微不足道的东西,但我会努力收集力量并更详细地研究它。
    • 本地 (MS) SQL 实例通常可以用简单的 .字符(即“.\SQLEXPRESS”),这可能很有用,并且不需要任何神奇的构建后转换。否则,您将不得不做一些跑腿工作,抱歉。
    • 是的,这是目前最好的建议 - 这将使我摆脱当前项目的麻烦......谢谢。
    猜你喜欢
    • 2013-03-04
    • 2014-06-15
    • 1970-01-01
    • 1970-01-01
    • 2015-02-20
    • 2015-02-24
    • 1970-01-01
    • 2013-02-01
    • 2011-03-27
    相关资源
    最近更新 更多