web-dev-qa-db-ja.com

添付の.mdfデータベースを使用するためのWeb.configのDB接続文字列が機能しない

ファイルneodb.mdfは私のApp_Dataフォルダーにあり、組み込みのSQLEXPRESSを使用して、VisualStudioのサーバーエクスプローラーでデータベースを参照できます。

現在、役に立たないようにしています:

 <connectionStrings>
    <add name="EFDbContext" connectionString=".\SQLExpress;AttachDbFilename=|DataDirectory|neodb.mdf; Database=neodb;Trusted_Connection=Yes;" providerName="System.Data.SqlClient"/>
  </connectionStrings>

そして

 <connectionStrings>
    <add name="EFDbContext" connectionString="Data Source=.SQLEXPRESS;Database=neodb.mdf;Integrated Security=True" providerName="System.Data.SqlClient"/>
  </connectionStrings>

また、*。mdfはSQLサーバーデータベースのファイルタイプであり、.dboは初期カタログに含まれている場合のファイルの所有者であることを理解していますか?どこでも最初のカタログは何ですか?

9
LaserBeak

* .mdfをApp_Dataフォルダーに配置している場合、次の形式を使用すると機能します。

<connectionStrings>
  <add name="ConnectionName"
    connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|DatabaseName.mdf;Integrated Security=True;User Instance=True"
    providerName="System.Data.SqlClient" />
</connectionStrings>
14

各データベースへの接続文字列を取得する簡単な方法があります。ソリューションエクスプローラーで「DataBase.mdf」ファイルをダブルクリック>サーバーエクスプローラーで「DataBase.mdf」ファイルを右クリック>「プロパティ」をクリック>これで、プロパティに接続文字列(「接続」ヘッダーの下)が表示されます。メニュー!

8
Gal Fridman

データベースをApp_Dataフォルダーに作成する場合。次のConnectionStringを使用できます:

<connectionStrings>
<add name="ConnectionName" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|MyDatabase.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient" />

または、次を使用することもできます。

<add name="ConnectionName" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=MyDatabase;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>

また、MyDatabase.mdfおよび.ldfデータベースファイルがC:\ Users\YourUserNameフォルダーに作成されていることがわかります。

2