¿Cómo obtener el valor de una colección de diccionario por clave en C#?
1. El método de recorrido de bucle más directo se puede dividir en dos formas: recorrido de pares clave-valor y recorrido de todas las claves.
2. Use Linq para realizar consultas (por supuesto, el espacio de nombres correspondiente usa System. Agregue Linq aquí)
El siguiente es un ejemplo de código muy simple:
Private void GetDicKeyByValue()
{
Diccionario ltstring, string gtdic = nuevo diccionario ltstring, string gt(); Añadir("1","1");
dic. Añadir("2","2");
dic. Add("3", "2");
//recorrido del par clave-valor de foreach
foreach(par clave-valor lt; cadena, kvp en cadena gtdic)
{
Si (kvp. valor. es igual a (" 2 "))
{?
//......kvp . Clave;
}
}
//foreach dic. key
foreach(Clave de cadena en la tecla DIC.)
{
if (Centro de información del conductor[key]). Igual a (" 2 "))
{?
//...clave
}
} p>
//Linq
var claves = dic. donde (q = gtq.Value == "2 "). seleccionar(q = gtq . Clave);? //Obtener todas las claves
Lista lt cadena gtkeyList = (q de dic
Donde q valor == "2 "
Seleccione la clave q). ToList lt string gt(); //Obtener todas las claves
var firstKey = dic. FirstOrDefault(q = gt; q.Value == "2 "). llave;? //Obtener la primera clave
}