0

Ich kann eine Anwendung erstellen, die Windows Forms verwendet, um eine SQL Server CE .sdf-Datei zum Lesen und Schreiben zu verbinden. Jetzt muss ich das selbe für ein Klassenbibliothek .dll Projekt tun, das ein Revit Add-In sein wollte, also fügte ich app.config und Settings.settings als auch aber vergebens hinzu!Einstellung der SQL Server CE-Verbindung für eine DLL-Klassenbibliothek

Jeder Vorschlag, die Verbindungszeichenfolge ordnungsgemäß zu speichern, damit es für mehrere Desktops funktioniert?

Vielen Dank im Voraus!

+0

Nur stellen Sie die Verbindungszeichenfolge im Code ?? – ErikEJ

+0

Danke @ErikEJ für das Kommentieren. Das Problem beim Festlegen der Verbindung auf diese Weise - String consting = "Datenquelle = | DataDirectory | RoomDB.sdf" - ist, dass es die "RoomDB.sdf" im Verzeichnis sucht, in dem Revit installiert ist, was natürlich nicht funktioniert da sein. –

+0

Ich habe die "RoomDB.sdf" im selben Verzeichnis des Projekts-des Add-In gefunden und brauche die Verbindungszeichenfolge, um auf diesen Ort zu verweisen. Ist das möglich? –

Antwort

0

Wenn Sie Datadirectory verwenden, können Sie den Wert, dass in Code einstellen:

string path = // folder path to the database file  
AppDomain.CurrentDomain.SetData("DataDirectory", path); 
+0

Würde das gelingen, wenn ich versuche, das Add-In in anderen PCs zu installieren? –

+0

Ich habe versucht, auf das gleiche DLL-Verzeichnis im folgenden Format zu verweisen: String mycon = "Datenquelle = \" System.IO.Path.GetDirectoryName (System.Reflection.Assembly.GetExecutingAssembly(). GetName(). CodeBase) \\ RoomDB.sdf "; aber es gibt mir den folgenden Fehler" Das Format der Initialisierungszeichenfolge entspricht nicht der Spezifikation, die bei Index 1 beginnt. " –

+0

Auf Ihre Frage - ja, wenn Sie die .sdf-Datei finden können! – ErikEJ

Verwandte Themen