在 Autofac 中的 Microsoft依赖注入中是否存在以下方法的等效项。
ActivatorUtilities.CreateInstance(serviceProvider)
答案 0 :(得分:2)
Autofac中没有ActivatorUtilities
的直接模拟。但是你有选择。
您可以直接解析已注册的内容(服务位置)-lifetimeScope.Resolve<T>()
如果您需要解析所有类型而不是仅解析已注册的内容,AnyConcreteTypeNotAlreadyRegisteredSource
可以提供帮助。
您可以将属性注入到构造的对象中-lifetimeScope.InjectProperties(obj)
或者,如果您确实需要ActivatorUtilities
,则可以将Autofac.Extensions.DependencyInjection
包用于create a Microsoft container backed by Autofac并直接使用实用程序方法。