with values through loop keys from example array c# list hashtable

c# - values - hashtable using



¿Cómo puedo convertir List<object> a Hashtable en C#? (4)

Tengo una lista de objetos, cada uno con una identificación, código y descripción.

Necesito convertir esta lista en una Hashtable, usando Description como clave e Id como valor.

Esto es para que el Hashtable pueda ser serializado a JSON.

¿Hay alguna forma de convertir de List <Object> a Hashtable sin escribir un bucle para revisar cada elemento de la lista?


theList.ForEach (delegate (obj Objeto) {dic.Add (obj.Id, obj.Description);});


Si tiene acceso a Linq, puede usar la función ToDictionary .


Supongamos que su Lista contiene objetos de tipo Foo (con un ID int y una cadena Descripción).

Puede usar Linq para convertir esa lista en un diccionario como este:

var dict = myList.Cast<Foo>().ToDictionary(o => o.Description, o => o.Id);


También mire System.Collections.ObjectModel.KeyedCollection <TKey, TItem>. Parece una mejor coincidencia para lo que quieres hacer.