【问题标题】:Is it possible to override both appSettings and connectionStrings in a Local.config file?是否可以在 Local.config 文件中同时覆盖 appSettings 和 connectionStrings?
【发布时间】:2012-06-20 13:50:48
【问题描述】:

我们目前在每个开发人员的 Local.config 文件中从 web.config 覆盖 appSettings。但是,我们还需要覆盖连接字符串,因此我们访问我们机器上的本地副本,而 web.config 可能会引用生产服务器。我知道您可以通过指定file="Local.config" 来覆盖appSettings,但是这对于connectionStrings 也是可能的吗?我们已经为连接字符串使用了一个外部文件,但是这个文件包含所有三个连接字符串(本地开发人员、开发人员和生产人员)。

我想做的是将 connectionString 默认设置为生产,但在开发人员的机器和开发服务器上被覆盖。但是,这似乎是不可能的,因为与 appSettings 不同,当您告诉它使用外部文件时,您无法为 connectionStrings 指定值。

这是否可以在不添加额外代码的情况下实现?

我应该注意,我目前不能使用配置转换,因为我们在 ASP.NET 3.5 上。

【问题讨论】:

    标签: asp.net web-config


    【解决方案1】:

    在主应用程序配置文件中,您使用 configSource 属性来指定外部文件的完全限定名称和位置。这个例子引用了一个名为connections.config的外部配置文件。

    <?xml version='1.0' encoding='utf-8'?>
    <configuration>
        <connectionStrings configSource="connections.config"/>
    </configuration>
    

    详细信息请访问msdn上的this link(部分:使用外部配置文件)

    【讨论】:

    • 我们已经使用了这些,但我们必须将所有三个连接字符串保存在一个文件中,并手动注释掉在任何给定时间未使用的那些。我希望有一种方法可以覆盖它们。
    猜你喜欢
    • 2016-11-06
    • 2012-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-09
    • 1970-01-01
    相关资源
    最近更新 更多