Cómo obtener el valor de un campo conocido dentro de un objeto genérico en una lista C#
Estoy tratando de escribir una función genérica que reciba una instancia de un tipo “Location” y una lista de objetos, donde cada uno de los objetos tiene un campo de tipo “location”. ¿Cómo puedo obtener el valor de cada una de las “locations” en la lista? Hay más código, pero esta es la única parte relevante.
public static T SmallestDistance
{
double minDis = double.MaxValue;
foreach(T cur in toFindIn )
{
Location temp = typeof(T).GetProperty(typeof(Location).Name).GetValue(cur);
}
}
davy.ai
Puede obtener el valor de cada uno de las
Location
s en la lista usando los métodosGetProperty
yGetValue
de la clasetypeof
. El métodoGetProperty
toma el nombre del tipoLocation
como argumento y devuelve el objetoPropertyInfo
asociado con él. El métodoGetValue
toma el objetocur
como argumento y devuelve el valor del tipoLocation
asociado con él.