我正在尝试使用Pomelo.EntityFrameworkCore.MySql和EF Core3.0连接到MySQL数据库
我遵循了Pomelo提供的指南。
当我运行web应用程序时,我可以看到一些表被成功创建。但是,使用GUID作为ID的表会收到以下错误:
An error occured during migration
MySql.Data.MySqlClient.MySqlException (0x80004005): BLOB/TEXT column 'Id' used in key specification without a key length如何解决这个问题?如何在MySql中使用GUID作为ID以及如何解决此错误?
发布于 2019-11-13 00:09:00
我找到了一个解决方案,不确定这是一种变通的方法,还是这是正常的方法。
只需在您的DataContext类中添加以下代码:
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.Entity<AppUser>(entity => entity.Property(m => m.Id).HasMaxLength(255));
}此外,如果您要从另一个数据库引擎迁移到MySQL,最好删除所有迁移并创建新的迁移,以便它将实现上述代码并使用MySQL正确地创建迁移
我希望这对像我一样陷入困境的人有所帮助。
https://stackoverflow.com/questions/58821587
复制相似问题