【问题标题】:Is LocalDB supported by Visual Studio 2010 in Entity Framework 5?Entity Framework 5 中的 Visual Studio 2010 是否支持 LocalDB?
【发布时间】:2012-03-15 08:44:41
【问题描述】:

.NET 4.0 上的 Entity Framework 5 中的 Visual Studio 2010 是否支持 LocalDB?

还是我做错了?使用 LocalDB 的连接字符串实例化我的模型容器时遇到“找不到网络路径”问题。

这是连接字符串:

var connectionString = "metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=System.Data.SqlClient;provider connection string=\"data source=(localdb)\v11.0;initial catalog=fablelane_com_db;integrated security=SSPI;multipleactiveresultsets=True;App=EntityFramework\"";

编辑 1 我在连接时收到以下错误,更具体地说:

在建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)。

编辑 2 我刚刚发现更改为 Visual Studio 11 beta 也不起作用。仍然收到相同的错误消息。

【问题讨论】:

    标签: c# entity-framework localdb


    【解决方案1】:

    问题很简单,就是缺少反斜杠来转义我的数据库。

    注意数据库的名称是“(localdb)\v11.0”。原始连接字符串中的反斜杠根本没有转义,因此它将“\v”作为连接字符串的一部分处理。

    通过指定 "\\v" 而不是 "\v" 来转义它有效。

    【讨论】:

    • 你也可以在开头引号前加上一个@来禁用转义
    【解决方案2】:

    LocalDB 是 SQL Server 2012 的一部分,因此在没有 SQL Server 2012 的情况下安装 EF 5.0(在 .NET 4.0 上的行为类似于 EF 4.3.1)不起作用。从 .NET 4.0 you need .NET 4.0.2 使用 LocalDB,但问题是 how it works with VS 2010 tooling 用于 EF。

    【讨论】:

    • 但这似乎不起作用。我使用的是 .NET 4.0 和 Visual Studio 2010 - 这意味着什么?
    • 您是否拥有 .NET 4 Update 4.0.2 并且您的项目以更新为目标?究竟是什么不起作用?
    • 我有更新的 .NET 4.0.3 更新。这是一个无法连接到数据库的单元测试项目。使用上面的连接字符串时出现错误“找不到网络路径”。
    • 能否从 SQL Server Management Studio 或 VS 2010 服务器资源管理器中打开 localdb?
    • 我可以从 VS2010 Server Explorer 打开。我无法从 SQL Server Management Studio 2008 R2 Express 中执行此操作。
    【解决方案3】:

    能够提供帮助有点晚,但我认为它可以帮助其他走进这里的人(就像我一样)。

    分步说明如何在 Visual Studio 2010 中使用 LocalDB。

    http://blogs.msdn.com/b/sqlexpress/archive/2011/11/28/using-localdb-in-visual-studio-2010.aspx

    【讨论】:

      猜你喜欢
      • 2010-12-13
      • 1970-01-01
      • 2012-08-02
      • 2011-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-28
      相关资源
      最近更新 更多