Ich habe ein SQL Server-Datenbankeinheit-Testprojekt, das ich nach den Anweisungen hier eingerichtet habe: https://msdn.microsoft.com/en-us/library/jj851212(v=vs.103).aspx.Wie wird das sql-server-Unit-Testprojekt je nach Visual Studio-Version auf localdb gesetzt?
Ich habe alles funktioniert perfekt auf meiner Maschine. Ich habe Visual Studio 2013 Ultimate Edition, was bedeutet, dass meine Localdb-Verbindungszeichenfolge in meiner app.config für mein Unit-Testprojekt auf den Server (localdb) \ ProjectsV12 zeigt.
Das Problem ist, dass einige meiner Mitarbeiter Professional Edition haben, was bedeutet, dass ihre db lebt unter: (localdb) \ Projects. Daher müssen sie die Verbindungszeichenfolge in app.config ändern, wenn sie es aus TFS auschecken und die Komponententests ausführen. Ich möchte, dass es so nahtlos wie möglich ist, damit sie nichts Besonderes tun müssen - einfach das Projekt ausprobieren, die Tests erstellen und ausführen.
Wie kann ich das lösen, damit das Komponententestprojekt auf den korrekten localdb Server abhängig von Ihrer Version von VS zeigt?
Sie können Ihr _app.config_ so einrichten, dass es aus einer [separaten Konfigurationsdatei] liest (http://stackoverflow.com/questions/24335650/splitting-appsettings-section-of-app-config-in- zweiteilig/24335980 # 24335980). Sie verteilen einmal eine andere Konfiguration an jede Umgebung und Ihre quellengesteuerte Version ändert sich nie. – Jasen
_connectionStrings_ Element verwendet das 'configSource' Attribut anstelle des' file' Attributs, aber es funktioniert auf die gleiche Weise. – Jasen
Ich denke nicht, dass das für mein Problem funktioniert. Es sind nicht mehrere Umgebungen, für die ich versuche zu lösen, es sind mehrere Versionen von Visual Studio. Wie würden Sie den externen Konfigurationspfad abhängig von der Version von Visual Studio, in der Sie das Projekt kompilieren, wechseln? – Donuts