我在EF的OnModelCreating()方法中有这个代码。它检测表是否有列,然后根据该列将正确的类绑定到EF。
if (new ColumnDetector().AdminColumnExists())
{
modelBuilder.Entity<EntityWithAdmin>();
}
else
{
modelBuilder.Entity<EntityWithoutAdmin>();
}
最初,专栏并不存在。然后它被添加到表中。上面的代码没有检测到它,因为它已经运行了。我认为回收应用程序池会做到这一点,但它没有。那有意义吗?这个代码不应该再次运行吗?我不得不重新启动网站以获取此代码来检测列并再次设置正确的类。为什么不回收应用程序池就足够了?