Heim > Backend-Entwicklung > C++ > Wie verwende ich relative Pfade für SQL Express-Verbindungszeichenfolgen in C#-Komponententests?

Wie verwende ich relative Pfade für SQL Express-Verbindungszeichenfolgen in C#-Komponententests?

Patricia Arquette
Freigeben: 2024-12-27 16:38:11
Original
684 Leute haben es durchsucht

How to Use Relative Paths for SQL Express Connection Strings in C# Unit Tests?

Relative Pfadverbindungszeichenfolge für SQL Express in Unit-Tests

Bei der Verwendung von SQL Express-Datenbanken in Unit-Test-Projekten in C# besteht die Herausforderung darin, den relativen Speicherort der MDF-Datei anzugeben zur ausführbaren Datei der Anwendung. Die Verwendung eines absoluten Pfads ist unpraktisch und das |DataDirectory| Die Variable ist zwar für Webanwendungen reserviert, kann in diesem Szenario jedoch genutzt werden.

Durch die Kombination der Ideen erfahrener Entwickler entsteht eine praktikable Lösung. Definieren Sie in der Datei app.config die Verbindungszeichenfolge als:

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

Innerhalb der Unit-Test-Klasse kann die DataDirectory-Eigenschaft dynamisch festgelegt werden:

[TestInitialize]
public void TestInitialize()
{
    AppDomain.CurrentDomain.SetData("DataDirectory", System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Databases"));

    // Rest of initialize implementation...
}
Nach dem Login kopieren

Durch Festlegen der DataDirectory-Eigenschaft B. auf den Pfad des Datenbankordners relativ zur ausführbaren Datei, wird die Verbindungszeichenfolge die MDF-Datei während Komponententests erfolgreich finden. Dieser Ansatz ermöglicht eine dynamische Verbindungszeichenfolge, die sich an die Bereitstellungsumgebung anpasst.

Das obige ist der detaillierte Inhalt vonWie verwende ich relative Pfade für SQL Express-Verbindungszeichenfolgen in C#-Komponententests?. 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