5
LINQを使用して宣言的に記述したいこの単純なループがあります。特に一緒にLINQとasync
/await
作品を作ることに、私はこだわっている非同期ループをLINQクエリに変換する
return FooSources.Where(...).FirstOrDefault();
:
async Task<Foo> GetFooAsync(string fooId, CancellationToken cancellationToken = default(CancellationToken))
{
foreach (var source in FooSources)
{
var result = await source.GetFooAsync(fooId, cancellationToken).ConfigureAwait(continueOnCapturedContext: false);
if (result != null)
{
return result;
}
}
return null;
}
私はのようなものを望みます。
ラムダでasyncを使用することもできます:) –
resharperをインストールして、そのようなループをラムダ式に変換することができます –
@FabianBigler:答えにどのようなものかを教えてください。 –