¿Cuál es la mejor manera de hacer esto donde PROPNAME
podría ser una propiedad del tipo T
? Edifícalo con reflexión, ¿o hay una buena manera LINQ de hacer esto?propiedad de lista LINQ a matriz?
T[] vals = people.Select(x => x.PROPNAME).ToArray<T>();
este es el mejor que tengo hasta ahora:
public T[] ConvertListCol<TFrom,T>(IEnumerable<TFrom> list, string col)
{
var typ = typeof (TFrom);
var props = typ.GetProperties();
var prop = (from p in props where p.Name == col select p).FirstOrDefault();
var ret = from o in list select prop.GetValue(o, null);
return ret.ToArray<T>();
}
obtenido un error en la vuelta ... pero cada vez más cerca. Está bien, pero un poco más desordenado de lo que esperaba.
es usted después de una serie de los nombres de propiedad de 'personas'? –
¿Está tratando de hacer una pieza de código reutilizable donde podría especificar cualquier propiedad y recuperar el conjunto de representaciones de cadena? – Tejs
situación es que hay un gran objeto pequeño de muchas propiedades, y una API desea verlas una columna a la vez en lugar de una fila a la vez. – sgtz