Найти значение в словаре, который находится внутри другого словаря - PullRequest
0 голосов
/ 01 июня 2018

У меня есть словарная переменная, которая выглядит следующим образом -

Dictionary<string, Dictionary<int, int>> newIds;

Я хочу найти значение внутреннего словаря, используя ключи, которые у меня есть.Предположим, что ключ для внешнего словаря - NAME (строка), а ключ для внутреннего словаря - 1 (int).Я хочу найти значение внутреннего словаря, используя эти ключи.Как я могу это сделать?Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 01 июня 2018

Вам нужно будет сделать что-то вроде:

bool found = TryGet(newIds, "Name", 1, out int result);

public bool TryGet(Dictionary<string, Dictionary<int, int>> dicts, string name, int num, out int val)
{
    val = -1;
    if (dicts.TryGetValue(name, out Dictionary<int, int> dict))
    {
        if (dict.TryGetValue(num, out int res))
        {
            val = res;
            return true;
        }
        return false;
    }
    return false;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...