如何在中创建具有多个值的字典

本文关键字:字典 创建 | 更新日期: 2023-09-27 18:00:49

我想在C#中创建一个字典,其中有一个键和多个与该键关联的键。我还想检索基于键的值。我在网上发现有人建议使用元组,但找不到合适的例子。如何使用它并检索数据?

目标:我想解析JSON响应并以密钥对的形式存储响应。

如何在中创建具有多个值的字典

当我需要做这样的事情时,我通常只创建一个可以用作值的自定义类。例如,如果我想存储一个以数字为键、以姓名、地址和电话号码为值的词典,我会创建一个Person类来包含姓名、地址、电话号码。

Dictionary<int, Person> = new Dictionary<int, Person>();

或者,您可以将该值设为数组或列表。

你想要的东西看起来像这个

Dictionary<int, Tuple<int, string>>

但你应该做的是创建一个类来取代Tuple

public class Person
{
  public int PersonId {get;set;}
  public string FirstName {get;set;}
}

然后你可以像这个一样定义你的字典

Dictionary<int, Person> bar = new Dictionary<int, Person>();

然后你可以检索像这样的值

var firstName = bar[1].FirstName  //1 is the key of the dictionary item 

我不知道这是否是你想要的:

Dictionary<int, KeyValuePair<int, string>> = new Dictionary<int, KeyValuePair<int, string>>();

但我认为它符合你的需要。