¿Cómo obtengo el tipo de clase genérica dentro de la clase?.NET: ¿Cómo verificar el tipo dentro de una clase genérica?
Un ejemplo:
que construir una colección con tipo genérico implementar ICollection < T>. Dentro Tengo métodos como
public void Add(T item){
...
}
public void Add(IEnumerable<T> enumItems){
...
}
¿Cómo puedo pedir dentro del método para el tipo dado T?
El motivo de mi pregunta es: Si se utiliza objeto como T la colección utiliza Añadir (tema objeto) en lugar de Agregar (IEnumerable < object> enumItems) incluso si el parámetro es IEnumerable. Entonces, en el primer caso agregaría toda la colección enumerable como un objeto en lugar de múltiples objetos de la colección enumerable.
así que necesito algo así como
if (T is object) {
// Check for IEnumerable
}
pero por supuesto que no se puede trabajar en C#. Sugerencias?
¡Muchas gracias!
Michael
esto responde a la pregunta planteada en el título. – reads0520