Ich habe eine C# -Assembly, die die app.config verwendet, um ihre Datenbankverbindungszeichenfolge zu speichern. Beim Debuggen der Anwendung ist mir aufgefallen, dass die Verbindung zur Datenbank immer wieder fehlschlug, weil der ConfigurationManager die Verbindungszeichenfolge machine.config fortsetzte:ConfigurationManager erhält die Verbindungszeichenfolge Machine.config
Datenquelle =. \ SQLEXPRESS; Integrierte Sicherheit; ....
Ich habe <clear/
> vor meine Verbindungszeichenfolge in der app.config hinzugefügt und es das Problem auf meinem Dev-Computer behoben. Das Problem wurde zurückgegeben, als ich es in der Produktion bereitgestellt habe. Kann mir jemand sagen, wie ich den machine.config Verbindungsstring stoppen kann?
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>
UPDATE
Im Folgenden gibt mir immer noch die machine.config Verbindungszeichenfolge ?!
Configuration appConfig = ConfigurationManager.OpenExeConfiguration(Assembly.GetExecutingAssembly().Location);
string dllConfigData =
appConfig.ConnectionStrings.ConnectionStrings[0].ConnectionString;
Ich weiß, es ist eine alte Post, aber ich bin noch neugierig, ist dies eine Desktop- oder Konsolenanwendung? Sehen Sie den Abschnitt Verbindungszeichenfolge mit dem Löschelement im Ausgabeverzeichnis (bin)? –
Ich habe immer noch das Problem in meiner Anwendung. Ich fügte klar hinzu, oder benutzte unterhalb codes und kopiere config-Datei zum Exe-Ordner, aber noch holt es Standarddaten. Ich benutze VS2015. – Amir
Ich hatte das gleiche Problem. Ich hatte die richtige Verbindungszeichenfolge in dem Projekt "Klassenbibliothek", das ich verwendet habe, und ließ die Datei "web.config" im Projekt "Web" leer. Sobald ich das auch im Web-Projekt hinzugefügt habe, hat es mir gut getan. Nur für den Fall, dass Sie mehrere Projekte in einer Lösung haben – Sugafree