【问题标题】:get keys of KeyValuePair List to int[] array using linq使用 linq 将 KeyValuePair 列表的键获取到 int[] 数组
【发布时间】:2014-04-21 04:31:07
【问题描述】:

有一个名为 Info 的 List<KeyValuePair<int,string>>

1  Sur
2  Hn
3  uh
4  er
5  Sur

我想获取所有具有值字符串 "Sur" (1,5) 的 id,然后将此结果转换为 int 数组。

我正在尝试类似的东西

int[] productsArray = Info.Select(kvp => kvp.Key ).Where(x => x.ToString () == "Sur").ToArray();

据我了解,x In 查询是将键与“Sur”进行比较,这是不正确的。

如何从这样的查询中正确获取整数数组

【问题讨论】:

    标签: c# arrays linq


    【解决方案1】:

    试试这样的

    List<KeyValuePair<int,string>> infos;
    
    int[] keys = infos.Where(kvp => kvp.Value == "Sur").Select(kvp => kvp.Key).ToArray();
    

    【讨论】:

      【解决方案2】:

      我希望这是你的答案。我觉得你的查询写错了。

        info.Where(cc => cc.Value == "Sur").Select(cc => cc.Key).ToArray();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-04
        • 2013-09-02
        • 2016-07-15
        • 2016-12-31
        • 2013-01-10
        相关资源
        最近更新 更多