EF核心缺少快照-Identity Server

时间:2019-12-19 19:15:07

标签: c# identityserver4 ef-core-2.0

我受命将IdentityServer应用程序更新到最新版本。

ConfigurationDbContext和PersistedGrantDbContext与当前数据库之间存在一些差异。

通常,我会创建一个迁移,然后更新数据库,但是在此项目中,没有以前的迁移或数据库快照。

因此,如果我尝试创建迁移,则整个Context都会编写脚本,而不仅仅是更改。

如何创建迁移,这只是当前数据库和DbContext之间的区别。

1 个答案:

答案 0 :(得分:0)

最简单的方法应该是在升级之前基于上下文创建初始迁移,然后升级dbContext并为此创建迁移。

像这样:

dotnet ef migrations add InitialConfigration -c ConfigurationDbContext -o Data/Migrations/IdentityServer/Configuration

dotnet ef migrations add InitialPersistedGrant -c PersistedGrantDbContext -o Data/Migrations/IdentityServer/PersistedGrant

然后删除初始迁移代码中Up()方法内的所有代码。

最后

dotnet ef database update

在这里,您应该将初始迁移与dbContext同步,并且可以升级上下文并创建第一个实际迁移。实际上,IdSrv没有什么特别的。