0

ASP.NET アプリケーションで SQL Express と LocalDb をサポートする必要があります。これはデモ用のサンプル アプリであり、実際の Web サイトではありません。

現在、アプリには LocalDb 接続文字列が付属しています。

<add name="Conn" 
connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=SampleDB;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\SampleDB.mdf" 
providerName="System.Data.SqlClient" />

ユーザーが SQL Express のみをインストールしている場合、接続文字列を次のように更新する必要があります。

<add name="Conn"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\SampleDB.mdf;User Instance=true"
providerName="System.Data.SqlClient" />

SQL Express と SQL LocalDb の両方がサポートされ、ユーザーが接続文字列を更新する必要がないように、接続文字列を指定することはできますか?

サンプル アプリケーションを更新して Sql Express とローカル DB の存在をテストし、必要な文字列を自動的に選択することはできますが、アプリケーションを最小限のコードでできるだけシンプルに保つ必要があるため、これは避けたいと考えています。

4

1 に答える 1

0

「ユニバーサル」接続文字列が可能だとは思いません。これは、特定のテクノロジで実行されている特定のデータ ストアに情報を提供するという接続文字列の目的を無効にします。

問題が LocalDB で開発し、たとえば SQL Server Express で運用している場合、web.config 変換を利用して、展開先の環境に基づいて接続文字列を選択できます。

于 2013-06-25T11:27:07.230 に答える