0
我有一些数据,越过三个层次,就像这样:我将如何存储这些数据?
Identifier, Key, Value
我想首先查找标识符。假设它是1.然后我会查找关键字,让我们说2。最后,关键会给我的价值。
我想我可能需要多值字典或一些二维/三维数组。所有数据都是固定的,数组只需要6个元素。
所以,我想在代码的东西,可以这样来访问:
SomeInfo[identifier, key]
这将返回值。
请询问更多信息。
我有一些数据,越过三个层次,就像这样:我将如何存储这些数据?
Identifier, Key, Value
我想首先查找标识符。假设它是1.然后我会查找关键字,让我们说2。最后,关键会给我的价值。
我想我可能需要多值字典或一些二维/三维数组。所有数据都是固定的,数组只需要6个元素。
所以,我想在代码的东西,可以这样来访问:
SomeInfo[identifier, key]
这将返回值。
请询问更多信息。
使用Tuple类,并使Tuple成为你的钥匙。这样,你的密钥可以由多个值:
SomeInfo[new Tuple<string, string>(identifier, key)];
为了详细说明,元组类提供了尊重的价值观你传递的GetHashCode()和equals()方法的正确实现,并且如果“标识符”或。 “key”不是字符串,你可以改变你传递给它的类型参数。
编辑:这里有一个工作示例:
var dictionary = new Dictionary<Tuple<string, string>, string>();
dictionary[new Tuple<string, string>("myIdentifier", "myKey")] = "myValue";
你是什么让我的元组的关键是什么意思? SomeInfo中有哪些类? – BText 2010-08-26 20:39:12
请注意'Tuple'类型在.NET 4.0中是新的。 – 2010-08-26 20:42:22
@达斯汀 - 谢谢。尽管我被允许使用.NET 4,这是好事。 – BText 2010-08-26 20:43:59