Los elementos List <dynamic> tienen campos pero no puedo acceder a ellos. ¿Por qué?
Necesito recorrer unList<dynamic>
objetos.
Todos los objetos de la lista tienen valores, pero por alguna razón, no puedo acceder a ninguno de los campos de objetos dinámicos. A continuación se muestra una captura de pantalla de mi ventana de depuración:
Allí puede ver que el objeto contiene campos (comoAlias, Carné de identidad, Nombre, etc.)
Intenté tanto lanzarlo a unIDictionary<string, object>
yExpandoObject
, en vano. No me enfrenté a algo así antes: no acceder a los campos existentes en undynamic
objetocuando existen.
¿Que esta mal aquí?
El código está arrojando unMicrosoft.CSharp.RuntimeBinder.RuntimeBinderException
con un mensaje que dice{"'object' does not contain a definition for 'Name'"}.
La lista se creó agregando objetos escritos de forma anónima, como este:
return new List<dynamic>(fields.Select(field => new
{
Id = field.Id,
Alias = field.Alias,
Name = field.Name,
Type = field.Type,
Value = field.Value,
SortOrder = field.SortOrder
}));
dóndefields
es unICollection<Field>
, una colección fuertemente tipada.