Centralize connection strings for multiple projects within the same solution

后端 未结 3 1675
南笙
南笙 2020-12-08 22:13

I currently have three projects in my solution that all have their own App.config file with the same exact connection string.

Is there a way to consolidate the conne

相关标签:
3条回答
  • 2020-12-08 22:47

    You can share the connection strings among multiple projects in a solution as follows:

    1. Create a ConnectionStrings.config file with your connection strings under a solution folder, this file should contain only the section connectionStrings

    2. In your projects, add this config file As a Link (add existing item, add as link)

    3. Select the added file and set its property Copy to Output Directory to Copy always or Copy if newer
    4. In the App.config of your projects, point to the linked ConnectionStrings.config file using the configSource attribute: <connectionStrings configSource="ConnectionStrings.config" />

    ConnectionStrings.config

    <connectionStrings>
        <add name="myConnStr" connectionString="Data Source=(local); Initial Catalog=MyDB;Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
    </connectionStrings>
    

    App.config

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

    Read more details....

    0 讨论(0)
  • 2020-12-08 22:54

    There's a few ways you could do it:

    1. Put common configuration settings in machine.config as shown here
    2. Put common configuration settings in a central file and link to that in each projects's app.config as shown here
    3. Store the configuration settings in the registry

    For me, i always work with the last solution :) Good luck!

    0 讨论(0)
  • 2020-12-08 22:57

    First, take a look at this post. It describes how you can share the same app.config between multiple projects.

    How to Share App.config?

    Second, take a look at one other post, which describes how you let different app.config-files have a reference to one single shared xml-file which contains the connection strings.

    Use XML includes or config references in app.config to include other config files' settings

    0 讨论(0)
提交回复
热议问题