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>即可。