-3
我有一个C#词典:C#LINQ查询字典
Dictionary<int, ItemsClass> Items
ItemsClass有一个名为“数字”
我想写一个LINQ查询,返回我的字典键数为ItemsClass成员有一个'数字'匹配一个特定的值,例如X。
我该怎么做?
我有一个C#词典:C#LINQ查询字典
Dictionary<int, ItemsClass> Items
ItemsClass有一个名为“数字”
我想写一个LINQ查询,返回我的字典键数为ItemsClass成员有一个'数字'匹配一个特定的值,例如X。
我该怎么做?
要获得所有符合条件的物品,你可以使用:
Items.Where(p => p.Value.Number == x).Select(p => p.Key);
为了得到你总是希望它找到一个唯一的关键是,只有一个:
Items.Where(p => p.Value.Number == x).Select(p => p.Key).Single();
为了得到第一个匹配项目,如果有多个项目:
Items.Where(p => p.Value.Number == x).Select(p => p.Key).First();
小修正:从我的阅读它将'p.Value.Number == x'。也可能值得使用'Single'或'SingleOrDefault',因为其含义是只有一个预期的结果而不是多个可能的结果。 – Chris
@Chris - 很好,谢谢。 – Sean