1

Mvc5では、サービスコンテナとして1を使用し、この方法で特定のタイプのオブジェクトをすべて解決します。.net core 1.0のインタフェースのすべてのインスタンスを取得する方法

public IUnityContainer UnityContainer; 

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


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

デフォルトのサービスコンテナを使用している.net coreではどのように特定のタイプのすべてのオブジェクトを解決できますか?

答えて

4

拡張メソッドのpluralバージョンを使用してください。

services.GetService<T>()の代わりにservices.GetServices<T>()を使用してください。

サービスに注入する場合は、IEnumerable<IRunAtInit>をコンストラクタに挿入します。

関連する問題