Digamos que tengo un miembro genérico en una clase o método, entonces:
public class Foo<T>
{
public List<T> Bar { get; set; }
public void Baz()
{
// get type of T
}
}
Cuando una instancia de la clase, la Tconvierte MyTypeObject1, por lo que la clase tiene una propiedad de lista genérica: List<MyTypeObject1>. Lo mismo se aplica a un método genérico en una clase no genérica:
public class Foo
{
public void Bar<T>()
{
var baz = new List<T>();
// get type of T
}
}
Me gustaría saber qué tipo de objetos contiene la lista de mi clase. Entonces, ¿la propiedad de la lista llamada Baro la variable local bazcontiene qué tipo de T?
No puedo hacerlo Bar[0].GetType(), porque la lista puede contener cero elementos. ¿Cómo puedo hacerlo?
object,IListo similar, pero esta podría ser la respuesta correcta.