2020年03月20日
川俣晶の縁側ソフトウェア技術雑記 total 4123 count

IAsyncEnumerableはIEnumerableと違っていろいろ使えない状況がある

Written By: 川俣 晶連絡先

問題 §

IAsyncEnumerableはawait foreach以外ではいろいろ使えない状況がある。

原因 §

おそらくはまだ未対応の状況が多々ある

解決 §

IAsyncEnumerableから配列に書き換えるこんなメソッドを書いたが、これで良いのだろうか? 配列になれば何でもできるが、いちいち配列に直していたら気分はC# 1.0である。

        public static async Task<T[]> IAsyncEnumerableToArray<T>(IAsyncEnumerable<T> enu)

        {

            var list = new List<T>();

            await foreach (var item in enu) list.Add(item);

            return list.ToArray();

        }