dotnetcore2.0 webapi中的entityframeworkcore mysql错误

oxf4rvwz  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(301)

我正在DotNetCore2.0API上使用entityframeworkcore mysql。
这是我得到的错误

Unable to cast object of type 'ConcreteTypeMapping' to type 'Microsoft.EntityFrameworkCore.Storage.RelationalTypeMapping'.

我在尝试访问任何dbset时都遇到了这个错误。我无法追踪它是Map问题、连接问题还是库问题。如果有人看到这个请告诉我。否则这就是我到目前为止所拥有的。

public class GamerDbContext : DbContext
{
    public GamerDbContext()
    {

    }

    public GamerDbContext(DbContextOptions<GamerDbContext> options) : base(options)
    {

    }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<GamerModel>();
    }

    public DbSet<GamerModel> GamerModel { get; set; }
    //public DbSet<GamerProfileModel> GamerProfiles { get; set; }
}

public class GamerModel
{
    [Key]
    public int Id { get; set; }

    //[Column(TypeName = "VARCHAR")]
    //[StringLength(36)]
    public string Username { get; set; }

    //[Column(TypeName = "VARCHAR")]
    //[StringLength(1024)]
    public string Password { get; set; }

    //[NotMapped]
    //public List<GamerProfileModel> GamerProfiles { get; set; }
}
-- auto-generated definition
CREATE TABLE Gamers
(
   Id       INT AUTO_INCREMENT PRIMARY KEY,
   Username VARCHAR(36)   NOT NULL,
   Password VARCHAR(1024) NULL,
   CONSTRAINT Gamers_Id_uindex
   UNIQUE (Id),
   CONSTRAINT Gamers_Username_uindex
   UNIQUE (Username)
);
b4lqfgs4

b4lqfgs41#

我想出来了。
原来我引用的是nuget包microsoft.entityframeworkcore2.1.0-preview2-final。似乎它和mysql.data.entityframeworkcore之间存在兼容性问题。一旦我取出第一个包,它就工作得很好。

相关问题