Не удается подключиться к MS SQL Server 2017 Express из консольного приложения dotnet core 2.2.
Проверка конфигурации сервера, как в Подключение к SQL Server работает Иногда
Я установил новый Microsoft SQL Server 2017 Express.Затем протестировал соединение с этим сервером с помощью консольного приложения (в .Net Framework 4.7.1).Работает!.
Затем я создал консольное приложение под Dot Net Core 2.2.Установил пакет NuGet System.Data.SqlClient и попытался подключиться к серверу sql, используя ту же строку подключения, которую я тестировал ранее, и получил ошибку тайм-аута.Как это можно исправить?(Я также использовал пакет Microsoft.Data.SqlClient с тем же результатом.)
Если я пытаюсь подключиться к другому SQL-серверу (2008), соединение устанавливается без проблем.
using System;
using System.Data.SqlClient;
namespace ConsoleClient
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Connecting");
using (var conn = new SqlConnection(@"server=<IP>\SQLEXPRESS;user id=sa;password=<PASSWORD>;database="))
{
Console.WriteLine("Try to open connection");
conn.Open();
Console.WriteLine("Connection opened");
}
Console.ReadLine();
}
}
}
Произошло следующее исключение:
Microsoft.Data.SqlClient.SqlException: 'Connection Timeout Expired. The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement. This could be because the pre-login handshake failed or the server was unable to respond back in time. The duration spent while attempting to connect to this server was - [Pre-Login] initialization=21064; handshake=50; '