Как я могу подключиться к удаленному серверу SQL с помощью Entity Framework? - PullRequest
1 голос
/ 30 июля 2010

У меня недостаточно опыта работы с системами баз данных. Я должен подключиться к удаленному серверу SQL и обработать некоторые запросы на нем. Как я могу подключить удаленный сервер через Entity Framework?

Ответы [ 3 ]

2 голосов
/ 30 июля 2010

1) Проверить, разрешен ли удаленный sql-сервер для удаленных подключений

2) В Visual Studio использовать мастер Entity Framework (добавить новое подключение)

2 голосов
/ 30 июля 2010

То же, что и при использовании любого другого инструмента подключения к базе данных: убедитесь, что сервер и все брандмауэры / прокси-серверы между вами и сервером принимают подключение, а затем предоставьте EF правильную строку подключения.

ОднакоЕсли вы собираетесь обрабатывать только некоторые SQL-запросы, я бы предложил вместо этого использовать SQL Server Management Studio.Entity Framework - это ORM, а не инструмент управления базами данных.

0 голосов
/ 10 мая 2018

Вот как я программно подключаюсь (без файла 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;
                ...
            }
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...