He visto algunas formas diferentes de iterar sobre un diccionario en C#. ¿Existe una forma estándar?
foreach(KeyValuePair<string, string> entry in myDictionary)
{
// do something with entry.Value or entry.Key
}
Si usted está tratando de usar un diccionario genérico en C# como usted usaría un array asociativo en otro lenguaje:
foreach(var item in myDictionary)
{
foo(item.Key);
bar(item.Value);
}
O, si sólo necesita iterar sobre la colección de claves, utilice
foreach(var item in myDictionary.Keys)
{
foo(item);
}
Y por último, si sólo te interesan los valores
foreach(var item in myDictionary.Values)
{
foo(item);
}
(Ten en cuenta que la palabra clave var
es una característica opcional de C# 3.0 y superiores, también podrías usar el tipo exacto de tus claves/valores aquí)
Yo diría que foreach es la forma estándar, aunque obviamente depende de lo que estés buscando
foreach(var kvp in my_dictionary) {
...
}
¿Es eso lo que estás buscando?