gpt4 book ai didi

c# - 在 C# 中使用 LINQ 进行字典操作

转载 作者:行者123 更新时间:2023-11-30 20:11:16 26 4
gpt4 key购买 nike

我有一个像这样的字典

Dictionary<String, List<String>> MyDict = new Dictionary<string, List<string>>
{
{"One",new List<String>{"A","B","C"}},
{"Two",new List<String>{"A","C","D"}}
};

我需要一个 List<String>从这个字典中,列表应该包含来自上述字典值的不同项目。

因此结果列表将包含 {"A","B","C","D"} .

现在我正在使用 for循环和 Union手术。喜欢

List<String> MyList = new List<string>();
for (int i = 0; i < MyDict.Count; i++)
{
MyList = MyList.Union(MyDict[MyDict.Keys.ToList()[i]]).Distinct().ToList();
}

任何人都可以建议我在 LINQ 或 LAMBDA 表达式中执行此操作的方法。

最佳答案

var items=MyDict.Values.SelectMany(x=>x).Distinct().ToList();

或者替代方案:

var items = (from pair in MyDict
from s in pair.Value
select s).Distinct().ToList();

关于c# - 在 C# 中使用 LINQ 进行字典操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4003260/

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