У меня проблемы с подключением к локальной базе данных MySQL.
Я убедился, что сервер работает, и я могу подключиться к серверу, используя имя пользователя и пароль из строки подключения, и создать базы данных с помощью терминала.
Я использую сообщество Visual Studio на Mac и MySQL 8.0.16.
Пример: Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace ReadSQL
{
class Program
{
static void Main(string[] args)
{
DataAccess dataAccess = new DataAccess();
dataAccess.GetTask();
}
}
}
DataAccess.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Dapper;
using System.Data;
namespace ReadSQL
{
public class DataAccess
{
public List<Task> GetTask()
{
using (IDbConnection connection = new System.Data.SqlClient.SqlConnection(Helper.CnnVal("workloadDB")))
{
var output = connection.Query<Task>($"select * from task where id=1").ToList(); //exception thrown here
Console.WriteLine(output);
}
}
}
}
Helper.cs
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ReadSQL
{
public static class Helper
{
public static string CnnVal(string name)
{
return ConfigurationManager.ConnectionStrings[name].ConnectionString;
}
}
}
Task.cs
using System;
namespace ReadSQL
{
public class Task
{
int id { get; set; }
string name { get; set; }
}
}
App.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="workloadDB" connectionString="Server=localhost;Database=workload;Uid=root;Pwd=adminPasswort;" providerName="System.Data.SqlClient"/>
</connectionStrings>
</configuration>
Я ожидаю, что вывод переменной будет содержать первую строку моей таблицы, но вместо этого я получаю сообщение об ошибке:
Система.Data.SqlClient.SqlException При установлении соединения с сервером sql произошла ошибка, связанная с сетью или экземпляром.Сервер не найден или не был доступен.Убедитесь, что имя экземпляра правильное и что SQL Server настроен для разрешения удаленных подключений.
Я не знаю, почему не могу установить соединение, потому что MySQL Server определенно работает и строка подключениядолжно быть правильно (также пытался :rust_connection = true;).Заранее спасибо!