繁体   English   中英

WPF 中作用域 EF Core DbContext 的生命周期

[英]Lifetime of scoped EF Core DbContext in WPF

我想在 .NET Core 3.1 WPF 应用程序中使用 EF Core 和 .NET Core 依赖注入。

在 ASP.NET 中,作用域 DbContext 的生命周期将是一个 HTTP 请求,但在 WPF 中,它将是推荐的整个应用程序的生命周期,这不是。

那么如何在 WPF .NET 核心应用程序中管理 DbContext 的生命周期?

我建议这样定义:

services.AddDbContext<AppDbContext>(options => options
        .UseSqlServer(configuration.GetConnectionString("LocalDB")), ServiceLifetime.Transient, ServiceLifetime.Transient);

这样每个 Model 都有自己的 DbContext。

另一种解决方案是声明 Singleton DbContextFactory 并调用其Create方法以每次使用创建新的 DbContext。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM