Tengo un IDictionary, ahora quiero usar estos valores en una lista de selección. ¿Cómo hago esto?IDictionary a SelectList?
Gracias.
Tengo un IDictionary, ahora quiero usar estos valores en una lista de selección. ¿Cómo hago esto?IDictionary a SelectList?
Gracias.
Simplemente configure "Value"
y "Key"
para dataValueField
y dataTextField
. Puede hacer esto en su propia Vista o desde su acción (no ha probado el código a continuación).
var targets = new Dictionary<string, string>(); targets.Add("Key", "Value"); ViewData["MyList"] = new SelectList(targets, "Key", "Value");
Bueno, IDictionary
hereda de IEnumerable
por lo que debe ser capaz de pasar ese diccionario a uno de los constructores para SelectList
.
Sin embargo, debe pasar la propiedad Values en lugar de solo IDictionary. Si acaba de pasar IDictionary obtendrá pares clave/valor en lugar de los valores. –
Por favor, publique el código que está utilizando para que podamos usar eso para probar. –
@ Meta-Knight Normalmente también necesita las claves para una lista de selección. A menos que no esté usando datos normalizados ... – ProfK
Lo tengo, gracias por la ayuda. –
@David: la declaración propone: public class Dictionary. Por lo tanto, recomiendo cambiar clave y valores, y finalmente: nueva lista de selección (objetivos, "clave", "valor"); –
@Bolt Thunder: actualizado. – David