私はここに手順に従って設定したSQL Serverデータベースユニットテストプロジェクトを持っています:https://msdn.microsoft.com/en-us/library/jj851212(v=vs.103).aspx。ビジュアルスタジオのバージョンに応じて、SQL Server単体テストプロジェクトをlocaldbに向けるには?
私はすべて自分のマシンで動作しています。私はVisual Studio 2013アルティメット版を持っています。これは、自分のapp.configの私のユニットテストプロジェクト用のlocaldb接続文字列がサーバ(localdb)\ ProjectsV12を指していることを意味します。
問題は、私の同僚の一部にプロフェッショナル版があることです。つまり、データベースが(localdb)\ Projectsにあることを意味します。したがって、TFSからチェックアウトして単体テストを実行すると、app.configの接続文字列を変更する必要があります。できるだけシームレスにして、特別なことをする必要はありません。プロジェクトをチェックし、テストをビルドして実行してください。
あなたのVSのバージョンに応じてユニットテストプロジェクトが正しいlocaldbサーバを指し示すように、これをどのように解決できますか?
あなたは_app.config_を[別の設定ファイル]から読み込むように設定することができます(http://stackoverflow.com/questions/24335650/splitting-appsettings-of-app-config-in- 2部/ 24335980#24335980)。各環境に異なる設定を一度配布すると、ソース管理バージョンは決して変更されません。 – Jasen
_connectionStrings_要素は 'file'属性ではなく' configSource'属性を使用しますが、それは同じように動作します。 – Jasen
私の問題ではうまくいかないと思います。それは私が解決しようとしている複数の環境ではない、それはVisual Studioの複数のバージョンです。プロジェクトをコンパイルしているVisual Studioのバージョンに基づいて、外部設定パスを条件付きで切り替える方法はありますか? – Donuts