gpt4 book ai didi

c# - 在多个 .NET 应用程序中引用相同的连接字符串

转载 作者:太空狗 更新时间:2023-10-29 18:30:42 25 4
gpt4 key购买 nike

我不确定这是否是这个问题的正确媒介,所以如果不是,请通知我,我会更正。

举个例子来说明我的观点,假设我有 30 个 .NET 应用程序发布到 2-3 个不同的 Web 服务器。现在,这些应用程序是基于 Intranet 的,因此我在每个应用程序中都引用了一个 C# 库。该库由我在每个应用程序中使用的方法组成,以便在必要时查找员工信息。现在,库有一个连接字符串,但我还必须在所有 30 个应用程序中引用相同的连接字符串...所以如果库引用的数据库发生变化,那么我必须记住所有 30 个应用程序并更改他们每个人。

有没有办法将连接字符串放在某种文件(文本文件或其他文件)中,并让 30 个应用程序中的每个应用程序中的每个 web.config 都引用该特定文件,所以如果连接字符串需要更改了,我可以在文件中更改它,然后所有 30 个应用程序仍然可以,还是没有类似的东西?

更新

好的,我现在知道如何为连接字符串目的引用文本文件了。但是,似乎我只能做两个选项之一...要么引用我的主要连接字符串和库连接字符串分别在 web.config 中,如下所示:

选项一

<connectionStrings>
<add name="PrimaryCS" // more data />
<add name="LibraryCS" // more data />
</connectionStrings>

此选项将要求我更改 30 个应用程序中每个应用程序中的 LibraryCS 连接字符串(如果它曾经被更改的话)(这不是我想要的)

选项二

<connectionStrings configSource="MyConfig.config"></connectionStrings>

此选项强制我将两个连接字符串都放在 MyConfig.config 文件中,而不仅仅是 LibraryCS 文件中。所以这会导致我有为 30 个应用程序中的每一个更改每个 MyConfig.config 文件中的 LibraryCS 连接字符串(同样,这不是我想要的)。

我在找什么

我正在寻找这两种选择的混合体,但这似乎无法完成,所以我希望这个媒体上的人知道一个解决方法

<connectionStrings configSource="MyConfig.config">
<add name="PrimaryCS" // more data />
</connectionStrings>

我希望 MyConfig.config 文件只包含 LibraryCS 连接字符串,然后让主要的 PrimaryCS 连接字符串成为分开.. 这样,如果需要更改 LibraryCS 连接字符串,那么我只需在一个地方进行。

最佳答案

Microsoft 有一份关于它的精彩文档。希望对您有所帮助。

To store connection strings in an external configuration file, create a separate file that contains only the connectionStrings section. Do not include any additional elements, sections, or attributes. This example shows the syntax for an external configuration file.

<connectionStrings>  
<add name="Name"
providerName="System.Data.ProviderName"
connectionString="Valid Connection String;" />
</connectionStrings>

In the main application configuration file, you use the configSource attribute to specify the fully qualified name and location of the external file. This example refers to an external configuration file named connections.config.

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

来源: https://learn.microsoft.com/en-us/dotnet/framework/data/adonet/connection-strings-and-configuration-files

关于c# - 在多个 .NET 应用程序中引用相同的连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53564262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com