2015-11-03 106 views
2

其實,我想檢查的是我的連接字符串有效。Azure - ASP.NET MVC連接到mysql數據庫

有asp.net mvc web應用程序和mysql數據庫部署在天藍色,所以我想第一次使用第二件事。所以,我添加數據庫到Visual Studio服務器資源管理器 - 分貝和所有表是可見的。

現在我嘗試添加的ConnectionString到我的項目,並且,哇,還有他們兩個,我發現: 第一:在Visual Studio中的數據連接屬性:

server=us-cdbr-azure-central-a.cloudapp.net;user id=userid;persistsecurityinfo=True;database=crawlerdb 

二:在蔚藍的工作場所的數據庫屬性:

Database=CrawlerDB;Data Source=us-cdbr-azure-central-a.cloudapp.net;User Id=userid;Password=userpass 

而且它們都不起作用。沒有幸運。 連接狀態檢查代碼:

using (SqlConnection conn = new SqlConnection(connstr)) 
     { 
      try 
      { 
       conn.Open(); 
       var q = conn.State; 
      } 
      catch(Exception ex) 
      { 
       var q = ex.Message; 
      } 
     } 

我在做什麼錯了:)告訴我PLZ :)


public class CrawledDataContext : DbContext 
{ 
    public CrawledDataContext() 
    { 
     Database.SetInitializer<CrawledDataContext>(null); 
     using (SqlConnection conn = new SqlConnection("server=us-cdbr-azure-central-a.cloudapp.net;user id=bb15193d20f901;persistsecurityinfo=True;database=crawlerdb")) 
     { 
      try 
      { 
       conn.Open(); 
       var q = conn.State; 
      } 
      catch(Exception ex) 
      { 
       var q = ex.Message; 
      } 
     } 
    } 
    public DbSet<GroupInfo> GroupInfoes { get; set; } 
} 

這裏是異常消息:

「與網絡相關的或與SQL Server建立連接時發生特定於實例的錯誤服務器未找到或無法訪問驗證實例名稱是否正確以及是否配置了SQL Server允許遠程連接。 (provider:命名管道提供程序,error:40 - 無法打開到SQL Server的連接)」

+0

你在哪裏讀你的連接。字符串從你的代碼? – yantaq

+0

其實,我使用的是dbcontext,所以我將上面的代碼添加到覆蓋的dbcontext類ctor。 –

+0

沒有看到你如何覆蓋dbcontext的完整方法很難說,你有什麼異常? – yantaq

回答

2

SqlConnection的是SQL Server數據庫,你應該使用的MySqlConnection

using (MySqlConnection conn = new MySqlConnection("server..."){} 
+0

哇,那很好,其實我問的問題是回答:) –