API ASP.NET: для этого DbContext не настроен поставщик базы данных. - PullRequest
0 голосов
/ 12 сентября 2018

Я пытаюсь подключиться к базе данных MySql из моего проекта .Net Core API.

Это мой контекстный класс:

public class MyContext : DbContext
{
    public MyContext() { }

    public MyContext(DbContextOptions<MyContext> options)
         : base(options) { }

    public MyContext(DbContextOptions options)
         : base(options) { }

        ...
}

, а это мой startup.cs :

public void ConfigureServices(IServiceCollection services)
{
    services.AddMvc();

    string MyConnectionString = "server=localhost;port=3306;user=root;password=*****;database=my_db";
    services.AddDbContext<MyContext>(options => options.UseMySQL(MyConnectionString));
}

Я знаю, этот вопрос ужемиллион раз, но я все еще не могу это исправить.

Редактировать: В контроллерах я создаю свой экземпляр MyContext с помощью конструктора без параметров.

1 Ответ

0 голосов
/ 12 сентября 2018

Давайте попробуем что-то еще:

Во-первых, в вашем DbContext создайте OnConfiguring метод:

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder
           .UseMYSQL("... connection string ...");           
    }

Во-вторых, в начале вашего ConfigureServices метода настройте DbContext следующим образом:

services.AddDbContext<MyContext>();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...