У меня есть список словарей, и я ищу ключ, основанный на значении. Как это сделать?получение ключа, когда значение известно в словаре
"someId"
возвращает ошибку:
"The given key was not present in the dictionary."
Так что, если я даю значение «Ann», то я бы ожидать, что функция возвращала ключ «30».
Каждый элемент в словаре, как это
item 1
[0] {[someid,30]}
[1] {[somename,"Ann"]}
[2] {[someaddress,"3, Carl House, UK"]}
private static int getmyId(string name)
{
...
List<Dictionary<string, string>> myList = new List<Dictionary<string, string>>();
foreach (Dictionary<string, string> item in myList)
{
if (item.ContainsValue(name))
{
myID = item["Someid"];
}
}
...
return myID
}
Функция, которую вы опубликовали, ничего не возвращает. Кроме того, это даже не имеет смысла. Вы забыли включить все это? – JNYRanger
Почему вы выполняете 'string x = item [" SomeName "];' во всех словарях? –
@ user1651888 Это не похоже на элегантное решение проблемы. Если вы предоставите более подробную информацию о том, что вы пытаетесь достичь, мы можем помочь найти лучшее решение. – TheLukeMcCarthy