InstancePerLifetimeScope and InstancePerMatchingLifetimeScop
本文关键字:InstancePerMatchingLifetimeScop and InstancePerLifetimeScope | 更新日期: 2023-09-27 18:05:47
在Autofac中,有人能解释一下当我以以下方式注册组件时会发生什么吗?
builder.RegisterType<SomeComponent>()
.InstancePerMatchingLifetimeScope(contextTag)
.InstancePerLifetimeScope();
Q1。这是注册组件的有效方式吗?
Q2。InstancePerLifetimeScope是否会覆盖另一个?如果我试图在'contextTag'范围内解析组件,我会得到一个异常吗?
它不是无效的。但看和理解这种需求是令人困惑的。
A2。该组件将在两个作用域中可用,并将在请求的作用域中解析。
我会尽量避免这种情况。但是如果您不能完全避免它,那么使用不同的autofac模块在不同的作用域中注册组件会更简洁。