Posted at

ISimpleIocインターフェイス(MVVM Light Toolkit リファレンス)


ISimpleIoc


概要

public interface ISimpleIoc


  • シンプルなIOC(Inversion of Control: 制御の反転)コンテナーのインターフェイス。


名前空間


  • GalaSoft.MvvmLight.Ioc


アセンブリ


  • GalaSoft.MvvmLight.Extras


メソッド


ContainsCreated<TClass>

ContainsCreated<TClass>

public bool ContainsCreated<TClass>()

public bool ContainsCreated<TClass>(string key)


概要


  • 引数keyを指定した場合、そのkeyを付けて生成したTClassのインスタンスが、コンテナー内にあるかを戻す。

  • 引数を指定しなかった場合、キーを付けて生成したインスタンスを含め、TClassのインスタンスが、コンテナー内にあるかを戻す。


戻り値


  • コンテナー内にTClassのインスタンスがある場合、trueを戻す。



IsRegistered<T>

IsRegistered<T>

public bool IsRegistered<T>()

public bool IsRegistered<T>(string key)


概要


  • 引数keyを指定した場合、そのkeyを付けてTがコンテナーに登録されているかを戻す。

  • 引数を指定しなかった場合、Tがコンテナーに登録されているかを戻す。


戻り値



  • Tがコンテナーに登録されている場合、trueを戻す。



Register<TClass>
Register<TInterface, TClass>

Register<TClass>, Register<TInterface, TClass>

public void Register<TClass>()

public void Register<TClass>(bool createInstanceImmediately)
public void Register<TClass>(System.Func<TClass> factory)
where TClass : class
public void Register<TClass>(System.Func<TClass> factory, bool createInstanceImmediately)
where TClass : class
public void Register<TClass>(System.Func<TClass> factory, string key)
where TClass : class
public void Register<TClass>(System.Func<TClass> factory, string key, bool createInstanceImmediately)
where TClass : class
public void Register<TInterface, TClass>()
where TInterface : class
where TClass : class, TInterface
public void Register<TInterface, TClass>(bool createInstanceImmediately)
where TInterface : class
where TClass : class, TInterface


概要


  • コンテナーにTClassを登録する。

  • 型引数TInterfaceを指定した場合、インターフェイスTInterfaceを実装するクラスとしてTClassをコンテナーに登録する。
    TInterfaceを指定してGetInstanceメソッド等を実行した場合、TClassのインスタンスが得られる)

  • 引数createInstanceImmediatelytrueならば、直ちにインスタンスを生成する。
    falseを指定した、または、引数createInstanceImmediatelyを指定しなかった場合、GetInstanceメソッド等を実行した時点で、インスタンスを生成する)

  • 引数factoryを指定した場合、インスタンスの生成にfactoryを使う。

  • 引数keyは、TClassまたはTInterfaceとともにコンテナーに登録される。GetInstanceメソッド等でインスタンスを区別するキーに用いる。



Reset

Reset

public void Reset()


概要


  • コンテナー内の全ての登録を削除する。



Unregister<TClass>

Unregister<TClass>

public void Unregister<TClass>()

public void Unregister<TClass>(string key)
public void Unregister<TClass>(TClass instance)


概要


  • 型引数TClassで指定したクラスの登録を、コンテナーから削除する。

  • 引数keyを指定した場合、keyを付けたTClassの登録のみを、コンテナーから削除する。TClassの他の登録があれば、それらはコンテナーから削除されない。

  • 引数instanceを指定した場合、そのインスタンスのみを、コンテナーから削除する。TClassの登録は、コンテナーから削除されない。



参照