Frage

ich einen SQL-Server mit 50-Datenbanken haben. Jeder hat genau das gleiche Schema. Früher habe ich die ehrfürchtige Subsonic 2.2 DAL basierend auf einem von ihnen erstellen.

muß ich Schleife obwohl eine Liste von Datenbanknamen und jedem einer Verbindung und ein Update einen nach dem anderen durchführen.

Wenn es einen Weg zu ändern, wie Unterschall Anwendungen die Verbindungszeichenfolge. Ich glaube, ich würde die Verbindungszeichenfolge im Speicher speichern muß auf diese Weise es halten zu ändern.

Ist das möglich?

Ich habe versucht zu tun a

ConfigurationManager.ConnectionStrings["theConnStrName"].ConnectionString = updated-connection-string-here;

.. aber das hat nicht funktioniert

Danke!

War es hilfreich?

Lösung

wurde Subsonic in erster Linie nur für eine Datenbank entwickelt. Ich habe mehrere Datenbanken ein paar Arten erfolgen. Ich hatte eine vollständige Probe für die Erstellung von Anbietern on the fly in den alten Foren für Unterschall geschrieben. Diese Beiträge sind nun weg. Was können Sie versuchen, einen Anbieter in der Konfigurationsdatei (yourProviderName) mit einer Dummy-Verbindungszeichenfolge eingerichtet ist, nur Unterschall zu initialisieren, dann die eigentliche Verbindungszeichenfolge festgelegt, wie in Ihrem Code erforderlich. Dies funktioniert nur mit einer Datenbank zu einer Zeit, aber ich denke, das ist, was man braucht. Wenn Sie mehrere Datenbanken gleichzeitig verwenden möchten, und mehr Code und einige Änderungen an der Unterschall 2.x Kern beinhaltet.

DataProvider provider = DataService.GetInstance(yourProviderName);
foreach(string connString in connectionStrings)
{
    provider.DefaultConnectionString = connString;
    DataService.Provider = provider;
    // ... do stuff
}

Andere Tipps

Ich glaube nicht, es ist einfach zu beheben, ohne einen SubSonic Provider für jede Datenbank.

Stattdessen würde ich die SubSonic-Quelle als Projekt in der Lösung gegeben und debuggen den Weg zum besten und sauberen Ort des Code wwith eine Art connnection String Wörterbuchliste und Funktionalität erweitern das Sie auf einem festlegen mögen bestimmten Zeitpunkt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top