ConfigurationManager ruft weiterhin die Verbindungszeichenfolge Machine.config ab.

Ich habe eine C # -Assembly, die die app.config verwendet, um ihre Datenbankverbindungszeichenfolge zu speichern. Beim Debuggen der Anwendung stellte ich fest, dass die Verbindung zur Datenbank weiterhin fehlschlug, da der ConfigurationManager weiterhin die Verbindungszeichenfolge machine.config zurückgab:

Datenquelle =. \ SQLEXPRESS; Integrierte Sicherheit;...

Ich fügte hinzu<clear/> vor meiner Verbindungszeichenfolge in der app.config und es behebt das Problem auf meinem Dev-Computer. Das Problem trat erneut auf, als ich es für die Produktion bereitstellte. Kann mir jemand sagen, wie ich verhindern kann, dass die Verbindungszeichenfolge machine.config verwendet wird?

SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings[0].ConnectionString);

<connectionStrings>
    <clear/>
    <add name="VersionConnectionString"
     connectionString=" Data Source=localhost;Initial Catalog=VersionInfo;User ID=user;Password=password"         
     providerName="System.Data.SqlClient" />
  </connectionStrings>

AKTUALISIERE

Das Folgende gibt mir immer noch die Verbindungszeichenfolge machine.config?!

 Configuration appConfig = ConfigurationManager.OpenExeConfiguration(Assembly.GetExecutingAssembly().Location);
                string dllConfigData =
                    appConfig.ConnectionStrings.ConnectionStrings[0].ConnectionString;

Antworten auf die Frage(8)

Ihre Antwort auf die Frage