根据本文http://blogs.msdn.com/b/webdev/archive/2014/02/12/per-request-lifetime-management-for-usermanager-class-in-asp-net-identity.aspx(默认的ASP.NET MVC 5模板实现此方法),每个请求应创建一次 ApplicationUserManager 对象。这意味着,为每个请求调用 ApplicationUserManager.Create(IdentityFactoryOptions选项,IOwinContext上下文) 方法。但是这个方法有这个代码:
public static ApplicationUserManager Create(IdentityFactoryOptions<ApplicationUserManager> options, IOwinContext context)
{
var manager = new ApplicationUserManager(new UserStore<ApplicationUser>(context.Get<ApplicationDbContext>()));
...
}
此代码表示每个请求也会创建 ApplicationDbContext 对象。这就是为什么,我有几个问题。
更新
我忘了提一下,我计划使用MongoDb和mongosharp驱动程序来存储数据。 Thay说,我可以为所有应用程序保留一个连接