IEnumerable から項目を数える 繰り返しなしで?質問する

IEnumerable から項目を数える 繰り返しなしで?質問する
private IEnumerable<string> Tables
{
    get
    {
        yield return "Foo";
        yield return "Bar";
    }
}

これらを反復処理して、#n of #m を処理するような記述をしたいとします。

メインの反復処理の前に反復処理を行わずに m の値を調べる方法はありますか?

私の言いたいことが明確に伝われば幸いです。

ベストアンサー1

IEnumerableこれはサポートされていません。これは設計によるものです。IEnumerable遅延評価を使用して、必要な直前に要求した要素を取得します。

反復処理せずにアイテムの数を知りたい場合はICollection<T>、 を使用できます。これには プロパティがありますCount

おすすめ記事