6

Weiß jemand, ob es möglich ist, eine einzige Verbindungszeichenfolge zu erstellen, die für alle Projekte in einer Lösung zugänglich sein wird (wir haben etwa 6).Wie erstelle ich eine Lösung Wide Connection String

Ich kann eine Textdatei mit diesen Informationen erstellen, aber wir benötigen auch Entwurfszeitunterstützung, und es ist nicht praktisch, eine Verbindungszeichenfolge in jeder App.Config- und Web.config-Datei in der Lösung zu haben.

Wir wollen grundsätzlich eine Einzelverbindungszeichenfolge, die leicht zu der Position der db Änderung ändern sollen, wird dies auch durch die IDE für Design-Zeit Unterstützung

+0

Erstens bin ich ein Delphi-Entwickler und sehr neu in der .Net-Umgebung ... Wenn ich etwas geben kann Weitere Informationen: Wir haben 1 EXE, 1 Web-Anwendung und zahlreiche DLLs. Wir wollen, dass alle Projekte zur Laufzeit auf diese zugreifen können UND Designzeit – Renier

Antwort

2

Nicht sicher verwendet werden, können Sie nicht nur setzen neue Konfigurationsdatei zu den Lösungselementen hinzufügen und in alle Projekte einbinden und laden?

Edit: Ich spreche speziell über eine allgemeine (XML) Config-Datei, nicht eine "App.config". Es hat genau das gleiche Format, es geht nur unter einem anderen Namen. Fügen Sie diese Datei zu Ihren Lösungspositionen hinzu und greifen Sie darauf unter Verwendung von OpenMappedExeConfiguration zu. Sie können ein zusätzliches Beispiel here finden.

+0

Das scheint nicht möglich zu sein ... aber ich könnte auch etwas verpassen. Wie in Kommentar oben erwähnt, bin ich ziemlich neu. NET – Renier

+0

OK Dies wird jetzt sehr nützlich. Ich habe es auch geschafft, eine sehr ähnliche Funktion zu schreiben. Derselbe Grundsatz wird gelten. In der Settings.settings-Datei unserer einen DLL habe ich eine Verbindungszeichenfolge deklariert. Auf diesen kann für FormName.Designer.cs folgendermaßen zugegriffen werden: this._connection.ConnectionString = global :: MyDLL.Properties.Settings.Default.MyConnectionString; Die letzte Frage, die ich habe, sind die * .designer.cs Dateien sind systemgeneriert. Wenn ich die Verbindungszeichenfolge in der Datei designer.cs bin und ich dann Änderungen am visuellen Designer vornimmt, löscht es diesen manuellen Zusatz, den ich hinzugefügt habe? – Renier

+0

Es tut mir leid, das weiß ich nicht. Vielleicht einfach ausprobieren? :) – mafu

1

Setzen Sie die Verbindungszeichenfolge in die Konfiguration Ihres "Haupt" -Projekts. Erstellen Sie ein Datenzugriffsprojekt mit einer Connectionstring-Eigenschaft. Legen Sie diese Eigenschaft fest, wenn Sie Ihr Projekt initialisieren und das Datenzugriffsprojekt für alle datenbankbezogenen Aktionen in allen 6 Projekten verwenden.

+0

Das wird nur funktionieren, wenn es ein Hauptprojekt gibt, nicht wenn z. Mehrere Projekte erzeugen jeweils eine .exe. – nos

+0

Sie können auch die Verbindungszeichenfolge in der Konfigurationsdatei des Data Access-Projekts angeben. Auf diese Weise haben Sie es nur an einer Stelle – Ivo

+0

Ivo ... Dies ist im Grunde, was wir ausprobiert ... aber ich kann nur zur Laufzeit zugreifen. Wir benötigen auch Unterstützung für die Entwurfszeit (insbesondere für DevXpress-Berichte). Wir laufen in einer PostgreSQL-Datenbank und verwenden Devarts UniDirect-Komponenten. – Renier