Entity framework 调用DbContext.Database.CompatibleWithModel的性能较慢
我们首先运行EntityFramework(6.1.3)代码,在SQLAzure上的一个小数据库(490MB)上进行大约40次迁移 在通过检查调用Database.CompatibleWithModel来验证数据库是否是最新的来扩展我们的发布过程时,我发现我们的测试实例变得相当慢:这个调用将需要2分钟才能完成。在我们的生产环境和本地,这不到一秒钟 我在本地运行了SQL探查器作业,发现只有3条语句在数据库上被激发:Entity framework 调用DbContext.Database.CompatibleWithModel的性能较慢,entity-framework,Entity Framework,我们首先运行EntityFramework(6.1.3)代码,在SQLAzure上的一个小数据库(490MB)上进行大约40次迁移 在通过检查调用Database.CompatibleWithModel来验证数据库是否是最新的来扩展我们的发布过程时,我发现我们的测试实例变得相当慢:这个调用将需要2分钟才能完成。在我们的生产环境和本地,这不到一秒钟 我在本地运行了SQL探查器作业,发现只有3条语句在数据库上被激发: 数据库存在吗 数据库中有多少迁移 上次迁移的migrationId和模型是什么 当
我已经检查了Azure数据库上的设置,以对照数据库的兼容性级别进行检查,在发现一篇文章说EDMX编辑器使用新的基数估计器速度较慢后,但此设置似乎没有效果。您解决了这个问题吗?我有一个类似的问题:嗨,弗朗索瓦,唉,找不到解决方案。你知道什么时候叫它吗?我以为这只是在启动时,但我意识到有时会在出乎意料的时候调用它。除非我的webapi在没有任何操作的情况下重新启动。我们在生产中推送新的构建后自己检查它,只是为了检查数据库是否正确更新。我认为这是在DbContext实例化时自动调用的?您确定吗?我到处都在做“新上下文()”…你解决了这个问题吗?我有一个类似的问题:嗨,弗朗索瓦,唉,找不到解决方案。你知道什么时候叫它吗?我以为这只是在启动时,但我意识到有时会在出乎意料的时候调用它。除非我的webapi在没有任何操作的情况下重新启动。我们在生产中推送新的构建后自己检查它,只是为了检查数据库是否正确更新。我认为这是在DbContext实例化时自动调用的?您确定吗?我到处都在做“新上下文()”。。。