gpt4 book ai didi

c# - 如何在 C# 中将字典的子集提取到另一个字典中?

转载 作者:IT王子 更新时间:2023-10-29 04:48:43 25 4
gpt4 key购买 nike

我想过滤掉一些我不需要进一步处理的字典对。检查此示例代码:

static void Main(string[] args)
{
var source = new Dictionary<string, dynamic>();

source.Add("number", 1);
source.Add("string1", "One");
source.Add("string2", "Two");
source.Add("string3", "Three");

var onlyStrings = source.Where(s => s.Key != "number").ToDictionary(s => s.Key);
}

在这种情况下,onlyStrings 是一个 Dictionary<string, KeyValuePair<string, object>>

但我希望 onlyStrings 具有以下对(源字典的子集):

  • 键:“string1”,值:“一个”
  • 键:“string2”,值:“二”
  • 键:“string3”,值:“三”

获得这样结果的最佳方法是什么?

最佳答案

ToDictionary 方法有一个重载,它也允许 elementSelector 委托(delegate):

var onlyStrings = source.Where(s => s.Key != "number")
.ToDictionary(dict => dict.Key, dict => dict.Value);

关于c# - 如何在 C# 中将字典的子集提取到另一个字典中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17204045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com