2013-01-22 70 views
1

我有一个WCF Web服务和本地数据实例在本地机器上完美工作。我已经在Azure上创建了一个数据库实例,并且在我将其托管到Azure上的Web服务之前,将该Web服务连接到它以确保它正常工作。从本地WCF连接到Azure SQL数据库

我已经设置了一个连接字符串到我的本地数据库,因此我认为我只需要将其更改为新的天青连接字符串,但这不起作用。请参阅工作连接字符串VS非工作,以及我如何在DAL下实现我的代码。

电流/本地连接字符串

<add name="VervePhaseOneConnectionString" connectionString="Data Source=SNICKERS\SQLEXPRESS;Initial Catalog=VervePhaseTwo;Integrated Security=True" 
      providerName="System.Data.SqlClient" /> 

这是不工作的新蔚蓝的连接字符串

<add name="VervePhaseOneConnectionString" connectionString="Server=tcp:server.database.windows.net,1433;Database=VerveDB;User [email protected];Password={passwordString};Trusted_Connection=False;Encrypt=True;Connection Timeout=30;" 
     providerName="System.Data.SqlClient" /> 
使用连接字符串

SqlConnection oConn = new SqlConnection(); 
      oConn.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["VervePhaseOneConnectionString"].ConnectionString; 
      oConn.Open(); 
      SqlCommand cmd = new SqlCommand(); 
      cmd.Connection = oConn; 
      cmd.CommandType = CommandType.StoredProcedure; 
      cmd.CommandText = "sp_addSessionPlay"; 

任何帮助,将不胜感激

DAL代码。

谢谢。

回答

0

您的连接字符串对我来说看起来是正确的。但是,要检查它,您可以登录到Azure帐户并单击SQL数据库并查看连接字符串。它会给你所需的不同例子。

enter image description here

另外,我想你已经检查了Azure的防火墙设置?

祝你好运。

+0

是检查防火墙的设置,我可以访问它在网络界面上。参考VS正在抛出SQL异常 - 建立与SQL Server的连接时发生网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,并将SQL Server配置为允许远程连接。 (提供程序:TCP提供程序,错误:0 - 由于目标计算机主动拒绝,无法建立连接。) –

+0

您看过允许的IP地址吗?我认为它被称为管理允许的IP地址?您可以使用网络界面进行连接,但应用程序需要将您的IP包含在此列表中进行连接。 – sgeddes

+0

是的,它绝对在允许的IP地址中 –

0

这可能是可能是您计算机/网络防火墙bloacking端口的出站连接1433尝试在你的整机/网络防火墙设置中添加一个例外规则端口1433