は、私は、一般的な方法があります:Tタイプを返すには?
private ILogger _logger; //get logger something else.
public T GetService<T>(ServiceType type)
{
//how to return _logger?
}
どのように私はTを返すことができますか?
var logger=GetService<ILogger>(log);
のgetServiceメソッドを実装する方法: はたとえば、私はILoggerですがありますか? ありがとうございました!
P.S.はい、私はGetServiceメソッドから1つ以上の型を取得しようとします。 例:Logger、その他のインフラストラクチャクラス。 私は、ServiceLocatorが正しい選択ではないことを知っています(多くの場所で使用されています)が、私の方法では(GetServiceは1つの場所で使用されます:私のプラグインのインフラストラクチャを取得するために)
HI @Admiral、多分あなたは[この]を参照することができます(http://stackoverflow.com/questions/9808035/how-do-i-make-the-return-type-をof-a-method-generic) –
私は間違いなくここで反射を使用しません。 @HimBromBeereは全く必要ありません –
'ILogger'と' T'は共通しているものは何ですか? – HimBromBeere