【问题标题】:c# - How to count the number of occurences of a string in a ReadOnlyCollection field [duplicate]c# - 如何计算ReadOnlyCollection字段中字符串的出现次数[重复]
【发布时间】:2017-11-29 01:05:04
【问题描述】:

我有一个来自 Microsoft.Clm.Shared.Smartcards 命名空间的 Smartcard 类型的 ReadOnlyCollection。

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

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

类似:

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

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

我还发现了许多示例,但不是针对 ReadOnlyCollection 对象的!

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

谢谢

大卫。

【问题讨论】:

  • Enumerable.Count takes a predicate。请参阅示例。
  • David,能否请您提及 smartcardCollection 的数据类型?
  • 简单的 lambda 语句:int Givaaty = smartcardCollection.Where(s => s.AssignedUserName == Rotem).Count();

标签: c# list linq count readonly-collection


【解决方案1】:

就用这个

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

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

【讨论】:

  • 完美,非常感谢
【解决方案2】:

你只需要使用CountWhere的重载...Count

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

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

【讨论】:

    猜你喜欢
    • 2012-05-31
    • 2011-03-02
    • 2013-11-04
    • 2023-02-04
    • 2020-06-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多