IDbConnection с MySql в .Net Core - невозможно внедрить с помощью автозапуска - PullRequest
0 голосов
/ 31 октября 2018

Используя autofac, я пытаюсь зарегистрировать IDbConnection со строкой соединения MySQL

 builder
     .Register<IDbConnection>(c => new SqlConnection(_connectionString))
     .InstancePerLifetimeScope();

И моя _connectionString:

"ConnectionStrings": {
    "DefaultConnection": "server=127.0.0.1;user id=mysqltest;password=test;port=3306;database=blog;"
}

К сожалению, у меня ошибка: System.ArgumentException: 'Keyword not supported: 'port'.'

С MS SQL (у которого нет порта) все работает нормально. Проблема только с MySQL.

Я установил: MySql.Data и MySqlConnector. Мне нужно что-нибудь еще?

1 Ответ

0 голосов
/ 31 октября 2018

Проблема в том, что SqlConnection предназначен для Sql Server, а не для mysql.

Вам необходимо зарегистрировать экземпляр MySqlConnection

builder
    .Register<IDbConnection>(c => new MySqlConnection(_connectionString))
    .InstancePerLifetimeScope();
...