我有一个PostgreSQL
数据库。我已经使用Scaffold-Db
“数据库优先”方法为其创建了模型(EntityFrameworkCore
命令)。 EntityFrameworkCore
类在.NET Standard 2.0
类库中,因为我打算在多个平台(WPF
,Xamarin.Forms
)上使用它。
PostgreSQL
与我的WPF
项目一起使用。为了使其与我的Xamarin.Forms
项目一起使用,我使用命令SQLite
为Add-Migration
创建了一个迁移。然后,我尝试运行Update-Database
命令,该命令失败,并告诉我SQLite数据库中没有序列。因此,我打开了迁移文件,并删除了所有添加序列的行。然后,Update-Database
命令运行正常。
问题是,当我运行Xamarin.Forms
项目并尝试使用数据库时,出现一个异常,提示“ SQLite不支持序列”。
任何人都对手动编辑迁移以便可以与SQLite一起使用有任何经验吗?
非常感谢。
没关系,我想我已经解决了。我忘了用我的modelBuilder.HasSequence("some_sequence_id");
的DbContext
方法删除这部分OnModelCreating
。现在数据库可以在WPF
和Xamarin.Forms
上运行,剩下要做的就是DbContext
的决定机制,因此它将根据平台使用正确的提供程序。我希望这对某人有帮助。