繁体   English   中英

ASP.NET中的MigrateDatabaseToLatestVersion性能

[英]MigrateDatabaseToLatestVersion performance in ASP.NET

我已经使用实体框架6继承了ASP.NET应用程序,并启用了迁移。 在我的Global.asax中,我有以下内容:

using (var context = new MyContext())
{
    Database.SetInitializer(new MigrateDatabaseToLatestVersion<MyContext, MyConfiguration>());
    context.Database.Initialize(true);
}

问题是,每次我的应用程序需要启动时(例如,由于IIS将其关闭),该逻辑都会运行,即使在大多数情况下也无需执行迁移。 这会大大减慢请求的处理速度。

我在这里有什么选择? 什么是最佳做法? 我可以禁用此功能,并使用Package Manager Console手动执行迁移,但是这样做的目的超出了预期(尽管如果没有其他选择,我准备这样做)。

EF6自动迁移似乎引入了几个问题(不仅是性能问题),因此EF Core团队决定将其从EF Core中删除(您可以在此处阅读一些理由)。

由于EF Core是EF6的后续产品(实体框架的未来),因此建议(最佳实践)似乎是禁用它并手动执行迁移。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM