【发布时间】:2018-06-19 11:06:38
【问题描述】:
有没有人“正确”地使用 Structuremap 设置 EF Core DBContext(什么是正确的?)
DBContext 在请求的整个生命周期中必须是单例。
我了解默认生命周期是瞬态。我知道这将获得一个嵌套容器,这实际上意味着在 web api / mvc 下运行时“每个请求”? (see this)
但是,看看这段代码,dbcontext 不是会成为 Application Lifetime 单例吗?
public class DistributedTaskRegistry : Registry
{
public DistributedTaskRegistry()
{
For<DistributedTaskDbContext>().Use(() => new DistributedTaskDbContextFactory().CreateDbContext(null));
For<IDistributedTaskRepository>().Use<DistributedTaskRepository>();
}
}
注意这是使用 EF Core 的“旧版”.Net Framework 4.7 Web Api
编辑HttpContextScoped怎么了?
【问题讨论】:
标签: asp.net-web-api dependency-injection entity-framework-core structuremap