gpt4 book ai didi

c# - 新的 ApplicationDbContext() 与 HttpContext.GetOwinContext().Get();

转载 作者:太空狗 更新时间:2023-10-29 19:42:32 24 4
gpt4 key购买 nike

我对哪种方式更好以及使用哪种方式有点困惑。当然,如果您总能得到 HttpContext.GetOwinContext().Get();那为什么还要创建一个新的 ApplicationDbContext 并冒险加倍对象等?

注意:我在这里专门讨论 Web 应用程序。

最佳答案

您创建并可以使用 HttpContext.GetOwinContext().Get<ApplicationDbContext>(); 检索的 DbContext 实例您的 MVC 应用程序中的内容可以专门留给身份框架使用。

如果您需要 DbContext 的实例以在您的应用程序中进行一般使用,您可以使用 IoC 容器(依赖项注入(inject))为您提供一个新的实例,以在需要时和在请求范围内(如果需要)提供。

您不应该需要检索 DbContext 的身份框架实例以在您的应用程序中使用,它将独立于您的应用程序进行管理,您可以管理自己的生命周期。

因为您将它们连接到 Owin Startup 类中以使用您的 DbContext 实例,它们将在后台使用它,并在需要时创建和销毁实例。

关于c# - 新的 ApplicationDbContext() 与 HttpContext.GetOwinContext().Get<ApplicationDbContext>();,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30163030/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com