Odczyt ciągu połączenia z zewnętrznego pliku konfiguracyjnego

Stworzyłem aplikację konsoli i plik app.config oraz plik Connections.config. Plik app.config zawiera źródło właściwości połączenia wskazujące na Connections.config

Gdy próbowałem odczytać ciąg połączenia w aplikacji, otrzymujęConfigurationErrorException

To jest moja główna metoda.

static void Main(string[] args)
    {
        var settings = ConfigurationManager.ConnectionStrings;
        if (settings != null)
        {
            foreach (ConnectionStringSettings setting in settings)
            {
                Console.WriteLine(setting.ConnectionString);
            }
        }
    }

Plik App.config

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

Plik Connections.config

<?xml version="1.0" encoding="utf-8" ?>
<connectionStrings>
  <add name="SQLDBConnecion"
   providerName="System.Data.ProviderName"
   connectionString="" />
</connectionStrings>

Tutaj zaobserwowałem dwie rzeczy. Po pierwsze: Jeśli określę configSource, nie mogę odczytać ciągu połączenia (wyjątek rzucania).

Po drugie: Jeśli umieściłem ten sam ciąg połączenia w pliku App.config i spróbowałem odczytać, kod działa, ale otrzymuję dwa ciągi połączenia (które powinny zwracać tylko jeden pusty łańcuch) Pierwszym ciągiem połączenia jest łańcuch połączenia sqlexpress jak ten

data source=.\SQLEXPRESS;Integrated Security=SSPI;
     AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true

drugi ciąg połączenia, który zwraca, jest pustym łańcuchem (jest to oczekiwane).

Chcę odczytać ciąg połączenia z pliku zewnętrznego, tak jak w moim scenariuszu. Jak to zrobić? Czego mi tu brakuje?

questionAnswers(4)

yourAnswerToTheQuestion