В настоящее время я разрабатываю ASP.NET Core WebApi, который использует базу данных SQL Azure для сохранения данных.Я использую Linux Mint 19 в качестве среды разработки.К сожалению, когда вызывается dbConnection.Open (), я получаю SQLException:
Exception has occurred: CLR/System.Data.SqlClient.SqlException
An exception of type 'System.Data.SqlClient.SqlException' occurred in
System.Data.SqlClient.dll but was not handled in user code: 'A
network-related or instance-specific error occurred while establishing
a connection to SQL Server. The server was not found or was not
accessible. Verify that the instance name is correct and that SQL
Server is configured to allow remote connections. (provider: TCP
Provider, error: 40 - Could not open a connection to SQL Server)'
Вот мой код:
private const string connectionString = "Server=tcp:{myserver}.database.windows.net,1433;Initial Catalog={mydb};Persist Security Info=False;User ID={user};Password={pass};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;";
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder();
builder.DataSource = "my_server.database.windows.net";
builder.UserID = "my_user";
builder.Password = "my_pass";
builder.InitialCatalog = "my_db";
using(IDbConnection dbConnection = new SqlConnection(builder.ConnectionString)){
dbConnection.Open();
var result = dbConnection.Query<Task>("SELECT * FROM Tasks");
if (dbConnection.State == ConnectionState.Open)
{
dbConnection.Close();
}
}
Я пробовал использовать как SQLConnectionStringBuilder и передать connectionString с моими учетными данными.Ничего из этого не сработало.
Я открыл порт 1433 с помощью команды:
sudo ufw allow 1433
, но это не помогло, но получило то же исключение.
Любойочень помог бы.
Спасибо.
ОБНОВЛЕНИЕ
Мне удалось подключиться с помощью Azure SQL.Похоже, мой провайдер блокирует соединение.Я смог подключиться через точку доступа WiFi на смартфоне.