2014-11-23 2 views
0

Я пытаюсь найти что-то, где я могу иметь список с ключ/значение, содержащее список ключ/значение, так что это будет выглядеть примерно так:многомерный ассоциативный массив в C#

String Item 1 
    +- key1 -> Object 
    +- key2 -> Object 
String Item 2 
    +- key1 -> Object 
    +- key2 -> Object 
    +- key3 -> Object 
    +- key4 -> Object 
String Item 3 
    +- key1 -> Object 

В PHP это будет выглядят так:

array(
    "String Item 1" => array(
     "key1" => Object, 
     "key2" => Object 
    ), 
    "String Item 2" => array(
     "key1" => Object, 
     "key2" => Object, 
     "key3" => Object, 
     "key4" => Object 
    ), 
    "String Item 3" => array(
     "key1" => Object 
    ) 
); 

Есть что-нибудь, что может сделать это в C#?

ответ

4

Вы можете использовать общий словарь, который использует общий словарь в качестве значения:

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

// Adding a value 
dict.Add("key", new Dictionary<string, object>() 
{ 
    { "key1", "value1" }, 
    { "key2", "value2" } 
}); 

// Retrieving value1 
var result = dict["key"]["key1"]; 
+0

Это выглядит многообещающим! –

+0

да .. общие словари довольно гибкие и будут давать вам лучшую производительность, чем класс Hashtable! –

Смежные вопросы