【问题标题】:Unsure how to set C# Connection string depending on solution configuration不确定如何根据解决方案配置设置 C# 连接字符串
【发布时间】:2015-08-25 07:29:26
【问题描述】:

我正在尝试弄清楚如何使用 Visual Studio 中的解决方案配置管理来设置 MySQL 连接字符串,具体取决于构建配置,但我对此相当陌生。

我找到了大量关于用于创建连接字符串的 App.config 文件的 XML 信息,但不清楚如何告诉不同的配置模式(请原谅我缺乏已知的术语)使用不同的连接字符串。

EG。我想要独立的开发和生产环境,每个环境都使用不同的 SQL 数据库,以免在任何生产数据库上进行开发。

到目前为止我在 app.config 中的内容:

<connectionStrings>
    <add name="Debug" connectionString="debguconnectionstring"/>
    <add name="Production" connectionString="productionconnectionstring"/>
  </connectionStrings>

这可能只是因为我缺乏术语阻碍了我的谷歌搜索能力,所以即使有人可以向我指出一个很棒的指南或欺骗线程。

谢谢!

编辑:

感谢大家的回答,遗憾的是我只能将其中一个标记为正确答案。 +代表每个人,正是我想要的。再次感谢!

【问题讨论】:

  • 也许这有帮助:hanselman.com/blog/…
  • 通常在我的工作环境中,我不会设置单独的生产和开发服务器。应用配置中的连接字符串默认指向生产数据库。我指向开发数据库的连接字符串,不会检查 app.config。

标签: c# mysql visual-studio connection-string


【解决方案1】:

这篇文章展示了如何构建这样的配置:

https://mitasoft.wordpress.com/2011/09/28/multipleappconfig/

要记住的要点: 为连接字符串提供相同的名称,仅更改其他详细信息,因此在代码中您将使用相同的名称,但它会根据配置(发布与调试)而改变

PS:抱歉没有足够的声望点来作为问题的评论发布

【讨论】:

    【解决方案2】:

    您将需要三个配置文件,如下所示: - 应用程序.config - app.Debug.config - app.Release.config

    这里已经有一个问题: How to select different app.config for several build configurations

    【讨论】:

      【解决方案3】:

      您正在寻找配置转换,(msdn 文章:https://msdn.microsoft.com/en-us/library/vstudio/dd465318%28v=vs.100%29.aspx) 但是,这仅适用于 Web 项目。在其他项目中使用它需要自定义代码,或者像我通常做的那样,需要外部包,例如Slow Cheetah (https://www.nuget.org/packages/SlowCheetah/) 将允许您在任何配置文件中使用转换。

      语法很简单。您在附加配置文件中定义相同的节点,然后将属性“xdt:Transform”设置为所需的模式,并将“xdt:Locator”设置为要与转换匹配的属性(例如,给它 xdt:Locator="Match (name)" 将转换具有相同名称属性的项目)

      【讨论】:

        猜你喜欢
        • 2018-10-18
        • 2023-04-01
        • 2010-11-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多