2012-05-09 7 views
0

を通過したとき:ストアタスクのみ、私は次のプロパティ持っているのIList

public RequestHandlerTasks(Func<EntityKey, string, IList<MyProperty>> handler) 

どのように操作することができます。

public Func<EntityKey, string, Task<IList<MyProperty>>> RequestHandler { get; private set; } 

を私もこのようになります私のクラスのコンストラクタを持っています私はそれを "RequestHandler"プロパティに格納することができるようにコンストラクタに渡された "ハンドラ"?

あなたが見つからなかった場合、コンストラクタは "IList"を使用し、プロパティはIListのタスクを必要とします。

+0

これらのハンドラで*しようとしていることは明らかではありません。その財産は達成するために何を意味していますか?私たちにもっと文脈を与えてください。 –

+0

これは、オーバーロードされたコンストラクタを持つヘルパクラスです。 (Func ハンドラ)または(Func >>ハンドラ)のいずれかを取ることができます。このクラスのインスタンスは辞書に保持されます。 Func >> – Retrocoder

+0

これはメンバーの利用可能な内容を説明していますが、*意味するものではありません。 –

答えて

2

まだセマンティクスがあることを意味しているか明らかではないが、としてそれはような単純なことができます

public RequestHandlerTasks(Func<EntityKey, string, IList<MyProperty>> handler) 
{ 
    // Whenever the RequestHandler delegate is called, it will start a new task. 
    RequestHandler = (arg1, arg2) => 
     Task.Factory.StartNew(() => handler(arg1, arg2)); 
} 

をコンパイルすること - それはあなたがか欲しい何をするかどうか別の問題...

関連する問題