Entity Framework Code First 在服务器资源管理器中找不到数据库

Entity Framework Code First can't find database in server explorer

所以我按照 Entity Framework Code First 的介绍来创建一个新数据库 ( https://msdn.microsoft.com/en-us/data/jj193542 ),并且我完全按照示例进行操作。现在我想在 Visual Studio 2013 年将它添加到我的服务器资源管理器中。

尝试了 LocalDb ((localdb)\v11.0) 或 SQL Express (.\SQLEXPRESS) 但数据库没有显示,我知道它在工作,因为我已经现在对其进行了多次测试,它一直在从数据库中附加和获取数据,那么它会驻留在何处?

除了默认的 Visual Studio 2013,我还有一个 SQL 服务器设置。谢谢

配置

<configuration> 
  <configSections> 
    <!-- For more information on Entity Framework configuration, visit go.microsoft.com/fwlink/… --> 
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
  </configSections> 
  <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> 
  </startup> 
  <entityFramework> 
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> 
      <parameters> 
        <parameter value="mssqllocaldb" /> 
      </parameters> 
    </defaultConnectionFactory> 
    <providers> 
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> 
    </providers> 
  </entityFramework> 
</configuration>

查看您的配置(在聊天期间提供)我可以看到您的 EF 正在使用 localdb 和 MSSQLLocalDB 实例。 尝试:

(localdb)\MSSQLLocalDB

我通过执行以下操作找出了我的数据库的位置:

  • 在我调用 contextdbcontext 或任何你想调用它的地方放置一个断点
  • 当您位于该断点时,向下钻取 Database -> Connection,您会在其中的某处找到您的连接字符串。

按照 VS2015 中的 Microsoft 示例,我遇到了同样的问题,正确的 ServerName 是:(localdb)\MSSQLLocalDB 数据库 是:CodeFirstNewDatabaseSample.Program+BloggingContext

在 Visual Studio 中查找 SQL 服务器对象资源管理器 window 中的数据库。如果您在那里找不到它,请执行以下操作:

  1. 打开 SQL Server Management Studio。
  2. 找到你的数据库
  3. 右键单击数据库并选择属性
  4. 找出数据库属于哪个服务器(例如your-name\SQLEXPRESS)
  5. 返回 Visual Studio:连接到 SQL 服务器对象资源管理器中的服务器
  6. 数据库在数据库下。
  7. 选择数据库。在属性 window 中查看数据文件 属性。这是数据库文件的路径。

步骤01: 正确显示 SQL 服务器选项卡下的数据库(在服务器对象资源管理器中) 然后 select 断开连接。之后你可以重新连接它。然后你会看到你的数据库。

如果不是。转到 windows 徽标旁边的搜索(开始)搜索服务。找到 mssqlserver 然后检查那些已经启动。如果不是,那么您可以启动它们。然后重复步骤 01。