学习Asp.Net身份我一直在使用微软提供的身份样本模板,可以通过NuGet下载。Asp.Net DbContext ...为什么在我的应用程序中经常这么叫? ...混乱
https://www.nuget.org/packages/Microsoft.AspNet.Identity.Samples/2.1.0-alpha1
或包管理器控制台运行:
安装,包装Microsoft.AspNet.Identity.Samples - 预
请注意
这示例与Visual Studios附带的示例不同。 VS附带的一个仍然使用Identity V1.0,NuGet上的软件包使用V2.1。因此,我还没有在VS例子中验证这种行为,只有NuGet。
我的一个简单的问题是,为什么在每个加载的页面上调用DbContext实例(ApplicationDbContext),而不仅仅是使用数据库的页面/操作?例如,如果我在ApplicationDbContext方法上放置断点,然后从索引页面导航到联系页面,或联系页面导航到索引页面,甚至导致随机测试页面,我创建的DBContext方法是解雇了所有的UserManager,RoleManager和SignInManager代码。
这是正常的吗?对于返回与数据库无关的视图来说,似乎有很多额外的工作...
你跟踪调用'dbContext'的地方吗?有一个选项可以检查每个请求的cookie有效性 - 如果是这种情况,可以调低。 – trailmax
这取决于如何设置身份验证,它可能是它重新创建一个用户cookie每个请求,并因此通过userManager等。 – Derek
@trailmax我确实看看调用层次和调用堆栈,但没有看到任何明显的。我也是编程和VS新手,所以我可能会看错地方。任何想法在哪里看淡调cookie验证? – Eddie