多くの APM スタイルの非同期メソッドでコードを再利用したいと考えています。各メソッドには、BeginXXX と EndXXX の署名ペアがあります。各関数で同じコールバックを再利用したい。
以下のような匿名メソッドを常に使用してきましたが、それを再利用可能な形式に抽出する方法がわかりません。これは簡単なはずですが、デリゲートを使用してこれを実現する方法がわかりません。(これは私が独学で得たものです)
var result = tableSymmetricKeys.BeginExecuteQuerySegmented(query, token, opt, ctx, (o) =>
{
var response = (o.AsyncState as CloudTable).EndExecuteQuerySegmented(o);
token = response.ContinuationToken;
int recordsRetrieved = response.Results.Count;
totalEntitiesRetrieved += recordsRetrieved;
Console.WriteLine("Records retrieved in this attempt = " + recordsRetrieved + " | Total records retrieved = " + totalEntitiesRetrieved);
evt.Set();
}, tableSymmetricKeys);
(o) => ...
匿名メソッドをデリゲートに抽出して再利用可能にするにはどうすればよいですか?