C#字典有很少的不同值

时间:2012-03-27 05:55:50

标签: c# dictionary

我想创建一个数据存储来允许我存储一些数据。

第一个想法是创建一个字典,可以有一些键的一些值,但我不知道如何存储几个不同的值,例如我需要两个值(字符串和图像)。有人可以建议如何实现这一点吗?

我怎么能存储这些信息?

5 个答案:

答案 0 :(得分:2)

在OOP世界中,数据通常以类的形式表示,这些类定义了它的结构,行为和责任。从您的示例到存储字符串和图像,您可以创建类:

public class Article
{
    public string Name { get;set;}
    public byte[] Image { get;set;}
}

然后你的字典就像:

Dictionary<string,Article> data;

答案 1 :(得分:1)

可以有几种方法来实现这一目标。

1)创建一个以stringimage为成员的类。然后将此类的实例存储为值。

2)使用Tuple<String, Image>作为值

答案 2 :(得分:0)

因为在c#中所有对象都是从对象派生的,所以可以使用object作为字典的值。

Dictionary<string, object> dataStore;

答案 3 :(得分:0)

var dic = new Dictionary<string, object>();

通过这种方式,您可以在字典中存储任何类型的对象,但不要忘记进行正确的演员。

答案 4 :(得分:0)

您想根据一个键存储不同的数据吗?例如“key1” - &gt;(姓名,年龄,生日)或者您想要在密钥下存储不同类型的数据吗?例如“key1” - &gt;名称,“key2” - &gt;年龄,“key3” - &gt;生日? 在第一种情况下,您应该为您创建一个新类,并在每个键下存储该类的实例。对于第二种情况,您可以创建字典并创建“对象”类型的值。然后,您可以将任何对象数据类型存储到键中。