Web.config中的DB连接字符串使用附加的.mdf数据库将无法正常工作

时间:2011-10-07 13:26:53

标签: asp.net sql-server visual-studio sql-server-2008 entity-framework

neodb.mdf文件位于我的App_Data文件夹中,我可以使用内置的SQLEXPRESS浏览visual studio中服务器资源管理器中的数据库:

目前无济于事:

 <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是初始目录中包含的文件的所有者?什么是最初的目录?

3 个答案:

答案 0 :(得分:13)

如果您将* .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>

答案 1 :(得分:6)

有一种简单的方法可以检索每个数据库的连接字符串。 双击&#34; DataBase.mdf&#34;解决方案浏览器中的文件&gt;右键单击&#34; DataBase.mdf&#34;服务器浏览器中的文件&gt;点击&#34;属性&#34; &GT;现在,您可以在属性菜单中看到连接字符串(在&#34; Connection&#34;标题下)!

答案 2 :(得分:2)

如果您希望在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"/>

您还将在C:\ Users \ YourUserName文件夹中看到MyDatabase.mdf和.ldf数据库文件。