LINQで条件に一致する要素の数を数える方法 質問する

LINQで条件に一致する要素の数を数える方法 質問する

いろいろ試してみましたが、私にとって最も論理的なのは次のようなものです。

int divisor = AllMyControls.Take(p => p.IsActiveUserControlChecked).Count();

AllMyControlsは のコレクションですUserControls。私が知りたいのは、プロパティが true に設定されているものがいくつあるかということUserControlsですIsActiveUserControlChecked

VS で得られるものは次のとおりです:

Cannot convert lambda expression to type 'int' because it is not a delegate type

私の表現の何が間違っているのでしょうか?

ベストアンサー1

int divisor = AllMyControls.Where(p => p.IsActiveUserControlChecked).Count()

あるいは単に

int divisor = AllMyControls.Count(p => p.IsActiveUserControlChecked);

あなたは初心者なので、見てみる価値があるでしょうEnumerableドキュメンテーション

おすすめ記事