Microsoft.EntityFrameworkCore 2.1-rc 与 MySql.Data.EntityFrameworkCore

Microsoft.EntityFrameworkCore 2.1-rc with MySql.Data.EntityFrameworkCore

我正在尝试将 mysql 与 Microsoft.EntityFrameworkCore 2.1-rc-final 和 MySql.Data.EntityFrameworkCore 8.0.11 一起用作提供程序。但是当我试图执行 mugrations 命令时,我得到了这个异常: System.MissingMethodException:未找到方法:'Void Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommandBuilderFactory..ctor(Microsoft.EntityFrameworkCore.Diagnostics.IDiagnosticsLogger`1, Microsoft.EntityFrameworkCore.Storage.IRelationalTypeMapper)'。

这是我的 IDesignTimeDbContextFactory 代码实现:

public class DesignLocationFactory:IDesignTimeDbContextFactory<LocationDbContext>
{
    public LocationDbContext CreateDbContext(string[] args)
    {
        var builder = new DbContextOptionsBuilder<LocationDbContext>();
            builder.UseMySQL("server=localhost;port=3306;user=***;passsword=***;database=locationdb");
        return new LocationDbContext(builder.Options);
    }
}

请问我该如何解决这个问题,或者至少提供一些如何与其他提供商一起使用的示例

最后,使用此提供程序 Pomelo.EntityFrameworkCore.MySql 版本 2.1.0-rc1-final 一切正常。 要安装它,请执行命令: 安装包 Pomelo.EntityFrameworkCore.MySql - 版本 2.1.0-rc1-final

我可以确认 2.1.0-rc1-final 解决了这个问题。另外,请注意 Pomelo 的区分大小写与 Microsoft.EntityFrameworkCore.

Pomelo = UseMySql (Sql)

EntityFrameworkCore = UseMySQL (SQL)

使用核心 2.1

Id                                           Versions
--                                           --------
Microsoft.AspNetCore.App                     {2.1.0}
Microsoft.VisualStudio.Web.CodeGeneration.Design {2.1.0}
Microsoft.EntityFrameworkCore.Tools          {2.1.0}
Microsoft.NETCore.App                        {2.1.0}
MySql.Data.EntityFrameworkCore.Design        {8.0.11}
MySql.Data.EntityFrameworkCore               {8.0.11}
Pomelo.EntityFrameworkCore.MySql             {2.1.0-rc1-final}