如何使用多个值创建字典?

时间:2014-04-28 18:29:32

标签: c# dictionary

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

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

3 个答案:

答案 0 :(得分:7)

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

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

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

答案 1 :(得分:1)

你的要求会是什么样的

Dictionary<int, Tuple<int, string>>

但你应该做的是创建一个类来替换那个元组

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 

答案 2 :(得分:0)

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

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

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