簡體   English   中英

如何通過Entity Framework連接遠程SQL Server?

[英]How can i connect remote sql server by Entity Framework?

我對數據庫系統沒有足夠的經驗。 我必須連接到遠程SQL Server並對其進行一些查詢。 如何通過Entity Framework連接遠程服務器?

與使用任何其他數據庫連接工具相同:確保服務器以及您與服務器之間的所有防火牆/代理服務器都接受連接,然后為EF提供正確的連接字符串。

但是,如果您僅要處理一些sql查詢,建議您改用SQL Server Management Studio。 實體框架是一個ORM,而不是數據庫管理工具。

1)檢查是否允許遠程SQL Server遠程連接

2)在Visual Studio中使用實體框架向導(添加新連接)

在這里,我如何以編程方式(沒有xml / appconfig文件)連接到遠程服務器:

  1. 首先,檢查您的遠程服務器參數是否正確設置。 特別是必須打開一個端口。 有關詳細信息,請參見此MSDN帖子
  2. 創建連接字符串,如下所示(請參閱SqlConnectionStringBuilder ):

     public static string GetRemoteConnectionString() { SqlConnectionStringBuilder sqlString = new SqlConnectionStringBuilder() { DataSource = $"{IP},{PORT}", // ex : 37.59.110.55,1433 InitialCatalog = "MyDatabaseName", //Database IntegratedSecurity = false, MultipleActiveResultSets = true, ApplicationName = "EntityFramework", UserID = "MyUserId", Password = "MyPassword" }; return sqlString.ToString(); } 
  3. 然后通過DbContext連接:

     public class MDBContext : DbContext { public MDBContext () : base(GetRemoteConnectionString()) { } ...... } 

額外:

  • 您還可以輕松地檢查連接(在創建DbContext之前),如下所示:

      try { using (SqlConnection con = new SqlConnection(GetRemoteConnectionString())) { con.Open(); } success = true; } catch (Exception ex) { success = false; ... } 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM