MVC 5 - 在每个页面上调用 IdentityDbContext Database.Exists

MVC 5 - IdentityDbContext Calling Database.Exists On Every Page

我开发了一个 MVC5 应用程序。数据库上下文源自 IdentityDbContext。当我创建数据库上下文的实例并调用基础 class 时,IdentityDbContext 正在调用 Database.Exists() 方法。

无论如何我都可以阻止它,因为当用户点击登录页面时,它需要一个 UserManager,它需要一个 DbContext,所以它查询数据库以查看数据库是否存在。

在任何情况下,在每个页面上,我的控制器构造函数都会设置此 UserManager,因此始终会发送此查询。

谢谢。

经过深入挖掘,我明白了调用查询的原因。出于某种原因,我在想 throwIfV1Schema 默认为 false。这是 IdentityDbContext 构造函数中的重载之一,默认为 true 并导致每次创建 IdentityDbContext 的新实例时调用 DBContext.Exists()