【问题标题】:Linq to Dictionary<string, string[]>. Select keys with values that contain condition stringLinq 到 Dictionary<string, string[]>。选择值包含条件字符串的键
【发布时间】:2023-04-09 10:51:01
【问题描述】:

我有一本字典 Dictionary。如何使用 Linq 选择所有值包含字符串“item1”的键?

Dictionary<string, string[]> dictionary = new Dictionary<string, string[]>
{
    {
        "key1",
        new string[] { "item1", "item2", "item3" }
    },
    {
        "key2",
        new string[] { "item1", "item4" }
    }
};

感谢您的帮助!

【问题讨论】:

  • 你尝试了什么?以dictionary.Where(kvp ... )开始
  • ToDictionary 只接受参数,不确定您需要如何帮助。也许先使用 groupby?

标签: c# linq dictionary


【解决方案1】:

使用Where 过滤KeyValuePairs 然后Select 以返回密钥。

var result = dictionary
    .Where(kvp => kvp.Value.Contains("item1"))
    .Select(kvp => kvp.Key);

【讨论】:

    猜你喜欢
    • 2013-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-27
    • 2012-09-21
    • 1970-01-01
    • 1970-01-01
    • 2013-01-16
    相关资源
    最近更新 更多