2

是否有可能通过实体框架“Code First”ctp 5连接到Sql Azure? 我一直在收到:通过实体框架连接到Sql Azure“代码优先”ctp 5

“与SQL Server建立连接时发生了网络相关或实例特定的错误。服务器未找到或无法访问。” ..消息。

我知道我的连接字符串是正确的,因为我可以用Visual Studio中的服务器资源管理器连接到数据库。

我试着连接到现有的数据库并首先创建数据库,两者都返回相同的消息。

此外,如果我使用本地数据库(sqlexpress),一切正常。

回答

2

我将连接字符串的名称传递给构造函数而不是连接字符串名称。如果你这样做,我认为它会自动创建一个新的sqlExpress连接。这可能是因为我将连接字符串放在web.debug.config和web.live.config中,并且无法解析它们。

0

SQL Azure不支持(或更准确地授予访问权限)所有系统存储过程和常规SQL服务器或SQL Express支持和开放的其他命令。你会发现SQL Azure在管理它的时候会有一些限制。

你想要做的是本地创建数据库,然后通过使用两种展鹏的SQL比较9.0版本的测试版发现它迁移到SQL Azure的: http://www.red-gate.com/Azure 或使用SQL Azure迁移向导在发现:http://sqlazuremw.codeplex.com/

+0

谢谢,但迁移不是问题。我可以在azure上创建数据库并连接到它 - 我只是无法使用EF Code First(cpt5)连接到它。 – 2010-12-13 00:18:58

0

我有同样的问题,但没有连接到天蓝色。这个问题出现在我的搜索中。我的代码第一次使用我的本地SQLExpress实例正常工作,但是当我尝试远程连接到运行SQL2008R2的另一台服务器时,出现同样的错误。然而,我可以在相同的代码中使用CF CTP5,使用直接的ADO.NET连接相同的ConnectionString。

+0

我终于得到了这个工作,尝试在DbContext构造函数中传递ConnectionString,而不是在.config文件中的ConnectionString的名称。 – 2011-01-08 00:18:26

+0

我是不正确的,它通过名称罚款解决了ConnStr,我有一个不匹配。 – 2011-01-08 05:00:58