Я следующий код мне нужно 3 параметра с помощью Еогеасп:Получите 3 параметра из словаря <строка, Dictionary <строка Действие >>
Dictionary<string, Dictionary<string, Action>>
Я попытался с помощью DictionaryEntry
и KeyValuePair
но они продолжают возвращать 2 значения вместо 3.
Редактировать: Я пытаюсь использовать Tuple, и я пытаюсь реализовать его в своем коде, но я не могу получить доступ к кортежу внутри элемента List (element). Код:
foreach (List<Tuple<string, string, Action>> element in Classes)
{
if (ActualText.StartsWith(element.Item1))
{
string temp1 = ActualText.TrimStart(element.Item1.ToArray());
if (temp1 == element.Item2)
element.Item3();
else
print("Unknown extension " + temp1);
}
}
Каковы 3 значения, которые вы пытаетесь получить? Более конкретно. – AndrewK
Это своего рода трудный ответ на ваш вопрос. Вы должны больше описать свой контекст. Maybee проблема может быть решена иначе. Пример, который вы указали, - это вложенный словарь. Поэтому каждый строковый словарь содержит новый строковый словарь с Actions. Вам нужно перейти в первый словарь, чтобы получить второй (как дерево) –
Im не уверен, что я понимаю ваш вопрос, но я думаю, вам нужно 2 foreach вложенных для каждого словаря в словаре и по одному для каждой пары ключей, значений. использование одного foreach всегда будет возвращать 2 keyValuePair, которые содержат ключ основного словаря, и словарь, связанный с ним, не будет перебираться во второй словарь –