C# 基于密钥过滤的keyValuePair获取

C# 基于密钥过滤的keyValuePair获取,c#,dictionary,C#,Dictionary,我使用myDictionary.Keys.Where获取序列,但它只返回键(我的谓词对键施加条件)。我还需要获得相关的值,我不知道如何轻松地完成,我肯定我错过了一些基本功能 var dict = new Dictionary<string, long>(); 最后一个将返回完整的KeyValuePair,带有两个属性(Key和Value) 另一个(较慢的)解决方案: IEnumerable<long> myvalues = dict.Keys.Where(x =>

我使用myDictionary.Keys.Where获取序列,但它只返回键(我的谓词对键施加条件)。我还需要获得相关的值,我不知道如何轻松地完成,我肯定我错过了一些基本功能

var dict = new Dictionary<string, long>();
最后一个将返回完整的
KeyValuePair
,带有两个属性(
Key
Value

另一个(较慢的)解决方案:

IEnumerable<long> myvalues = dict.Keys.Where(x => x == "A" || x == "B")
                                      .Select(x => dict[x]);
IEnumerable myvalues=dict.Keys.Where(x=>x==“A”| | x==“B”)
.选择(x=>dict[x]);
它的速度较慢,因为在筛选之后,您会在字典中查找找到的

最后一个将返回完整的
KeyValuePair
,带有两个属性(
Key
Value

另一个(较慢的)解决方案:

IEnumerable<long> myvalues = dict.Keys.Where(x => x == "A" || x == "B")
                                      .Select(x => dict[x]);
IEnumerable myvalues=dict.Keys.Where(x=>x==“A”| | x==“B”)
.选择(x=>dict[x]);
它的速度较慢,因为在筛选之后,您会在字典中查找找到的

最后一个将返回完整的
KeyValuePair
,带有两个属性(
Key
Value

另一个(较慢的)解决方案:

IEnumerable<long> myvalues = dict.Keys.Where(x => x == "A" || x == "B")
                                      .Select(x => dict[x]);
IEnumerable myvalues=dict.Keys.Where(x=>x==“A”| | x==“B”)
.选择(x=>dict[x]);
它的速度较慢,因为在筛选之后,您会在字典中查找找到的

最后一个将返回完整的
KeyValuePair
,带有两个属性(
Key
Value

另一个(较慢的)解决方案:

IEnumerable<long> myvalues = dict.Keys.Where(x => x == "A" || x == "B")
                                      .Select(x => dict[x]);
IEnumerable myvalues=dict.Keys.Where(x=>x==“A”| | x==“B”)
.选择(x=>dict[x]);
它会慢一些,因为在过滤之后,你会在字典中查找你找到的
键。

谢谢,我用一对ankis,我用一对ankis,我用一对ankis,我用一对ankis,我用一对ankis