c# - 如何计算ReadOnlyCollection字段

时间:2017-06-26 08:16:34

标签: c# list linq count readonly-collection

我有一个来自Microsoft.Clm.Shared.Smartcards名称空间的智能卡类型的ReadOnlyCollection。

智能卡对象的一个​​字段/参数是AssingnedUserName。

我需要能够计算列表中存在相同用户名的智能卡的次数

类似的东西:

[Pseudo Code]
int count = (smartcardCollection.AssignedUserName == my String).Count().

我尝试使用ReadOnlyCollection.Tolist()方法,但我找不到正确的语法来使其工作。

我还发现了很多例子,但是对于ReadOnlyCollection对象却没有!

实现这一目标的最佳做法是什么?

感谢

大卫。

2 个答案:

答案 0 :(得分:2)

您只需要使用CountWhere ... Count的重载:

int count = smartcardCollection.Count(s => s.AssignedUserName == my String);

int count = smartcardCollection.Where(s => s.AssignedUserName == my String).Count();

答案 1 :(得分:2)

只需使用此

int count = smartcardCollection.Count(s=>s.AssignedUserName == my String); 

LINQ Count它需要一个函数来测试每个元素的条件