1

在Mvc5中,我使用unity作为服务容器并使用这种方法解析特定类型的所有对象。如何在.net核心1.0中获取接口的所有实例

public IUnityContainer UnityContainer; 

    public MvcApplication() 
    { 
     UnityContainer = UnityConfig.GetConfiguredContainer(); 
    } 


    protected void Application_Start() 
    { 
     foreach (var task in UnityContainer.ResolveAll<IRunAtInit>()) 
     { 
      task.Execute(); 
     } 
    } 

在使用默认服务容器.NET核心如何解决某一特定类型的所有对象?

回答

4

只需使用plural版本的扩展方法即可。

而不是services.GetService<T>()使用services.GetServices<T>()

如果您想将它们注入服务,只需在构造函数中注入IEnumerable<IRunAtInit>即可。