我正在努力将我的ASP.NET核心项目从使用Microsoft SQL Server迁移到MySQL,因为MySQL DB提供程序已经发布(“预发布”)。我在使用SQL Server时使用Core Identity作为成员身份,并且它在该配置中工作。当我将数据库迁移到MySQL时(使用MySQL Workbench中的迁移向导),我在将新用户保存到数据库时开始收到此错误:
无法找到CLR类型“Microsoft.EntityFrameworkCore.Metadata.Internal.Property”
的关系类型映射
执行CreateAsync方法时,此代码中出现错误:
std::vector
这是我的DbContext类:
std::initializer_list
我在想它可能与SQL Server和MySQL之间数据类型的差异有关。这是SQL Server表:
这是使用MySQL Workbench中的迁移向导后的MySQL表:
请记住,使用SQL Server时,所有代码都能正常运行。感谢您的帮助,谢谢!
答案 0 :(得分:0)
答案 1 :(得分:0)
我将varchar字段的charset更改为utf8mb4,修复了问题。
我还选择使用Sapient Guardian版本的.net Core的MySql提供程序,事实证明它比MySql的版本要少得多。可以下载here。