繁体   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