Heim > Datenbank > MySQL-Tutorial > Wie kann ich einen relativen Pfad für eine SQL Express-Verbindungszeichenfolge in meinem Unit-Test-Projekt verwenden?

Wie kann ich einen relativen Pfad für eine SQL Express-Verbindungszeichenfolge in meinem Unit-Test-Projekt verwenden?

Mary-Kate Olsen
Freigeben: 2025-01-11 10:52:43
Original
292 Leute haben es durchsucht

How Can I Use a Relative Path for a SQL Express Connection String in My Unit Test Project?

Relativer Pfad für SQL Express-Verbindungszeichenfolge im Unit-Test-Projekt

In Ihrer Frage fragen Sie nach der Verwendung eines relativen Pfads oder einer Variablen im app.config-Datei für eine SQL Express-Datenbankverbindungszeichenfolge. Sie haben einen absoluten Pfad verwendet, um den Speicherort der MDF-Datei anzugeben, suchen aber nach einem flexibleren Ansatz.

Um dies zu erreichen, können Sie tatsächlich das |DataDirectory| verwenden Platzhalter in der Verbindungszeichenfolge. Allerdings liegen Sie mit Ihrer Annahme, dass dies nur auf Webanwendungen anwendbar ist, falsch. |Datenverzeichnis| ist eine spezielle Variable, die auf das Verzeichnis verweist, in dem sich die ausführbare Assembly für die Anwendung befindet. Dies ist eine bequeme Möglichkeit, auf einen bestimmten Speicherort zu verweisen, ohne einen absoluten Pfad angeben zu müssen.

Um dies zu implementieren, können Sie die Verbindungszeichenfolge in Ihrer app.config-Datei wie folgt ändern:

<add name="MyConnectionString"
    connectionString="Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\MyUnitTestDB.mdf;Database=MyDatabaseForTesting;Trusted_Connection=Yes;" />
Nach dem Login kopieren

Dadurch wird die Anwendung angewiesen, die MDF-Datei im selben Verzeichnis wie die ausführbare Assembly zu finden.

So legen Sie das |DataDirectory| fest Eigenschaft können Sie den folgenden Code in Ihrer Unit-Test-Klasse verwenden:

[TestInitialize]
public void TestInitialize()
{
    AppDomain.CurrentDomain.SetData("DataDirectory", System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Databases"));
    
    // Rest of initialize implementation ...
}
Nach dem Login kopieren

Diese Zeile legt das |DataDirectory| fest -Eigenschaft in das angegebene Verzeichnis, in dem sich Ihre MDF-Datei befindet. Mit diesem Ansatz können Sie eine relative Verbindungszeichenfolge verwalten, die unabhängig vom Speicherort der Anwendung funktioniert.

Das obige ist der detaillierte Inhalt vonWie kann ich einen relativen Pfad für eine SQL Express-Verbindungszeichenfolge in meinem Unit-Test-Projekt verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage