微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从KeyValuePair列表中接收对象列表的最佳方法?

如何解决从KeyValuePair列表中接收对象列表的最佳方法?

| 我有一个keyvaluePairs列表,我想根据键值对其进行过滤,因此最终我将获得一个经过过滤的值列表(意味着-不会包含原始列表中的所有值)。 我猜也许最好的方法是某种形式的Lambda表达式,但我不确定如何实现。 谢谢, 阿隆     

解决方法

        尝试这个:
var values = list.Where(x => x.Key == \"whatever\").Select(x => x.Value);
这将仅为您提供值的过滤列表。 显然,您可以更改过滤键的方式。     ,        使用以下内容:
var filteredList = list.Where(x => x.Key == \"Key\");
    ,        您正在寻找LINQ扩展方法的某种组合(具体取决于您要尝试执行的操作)。 例如,如果我有一个颜色列表的水果,并想要收集红色水果的集合,我可以执行以下操作:
var fruits = new List<KeyValuePair<string,string>>() { 
             new KeyValuePair<string,string>(\"Apple\",\"Green\"),new KeyValuePair<string,string>(\"Orange\",\"Orange\"),string>(\"Strawberry\",\"Red\"),string>(\"Cherry\",\"Red\") 
        };

var redFruits = fruits.Where(kvp => kvp.Value == \"Red\").Select(kvp => kvp.Key);

// this would result in a IEnumberable<string> { \"Strawberry\",\"Cherry\" }
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。