我正在尝试将现有的ASP.Net Identity Framework项目移到现有模型上使用存储过程。我已经启用了迁移,并且拥有一个现有的数据库,该数据库基本上是Identity构建的库存/标准(这里和那里有很多额外的列)。我试图通过DbContext
:
public class IdentityDbContext
{
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<ApplicationUser>().ToTable("Users").MapToStoredProcedures();
modelBuilder.Entity<ApplicationRole>().ToTable("Roles").MapToStoredProcedures();
}
}
然后我生成迁移:
Add-Migration -Name AddStoredProcedures
并应用迁移:
Update-Database
现在,当我尝试运行我的应用程序时,我在尝试时遇到异常:
System.InvalidOperationException: The model backing the 'IdentityDbContext' context has changed since the database was created. Consider using Code First Migrations to update the database (http://go.microsoft.com/fwlink/?LinkId=238269)."}
AFAICT,我正确运行了更新(__migrationhistory
表包含迁移的名称)。查看我的数据库,添加了存储过程。为什么框架不承认它?