Avatar ·

Como obter o tipo T de uma instância de classe ou método genérico em C#?

Olá a todos! Sou novo em C# e estou com um problema com tipos genéricos (generics). Suponha que eu tenha uma classe genérica: ```csharp public class MyList { private List items = new List(); public void Add(T item) { items.Add(item); } } ``` E eu crio uma instância dela: ```csharp var intList = new MyList(); ``` Agora, dentro da classe, quero saber qual tipo T realmente é. Por exemplo, se T é int, quero exibir "int" no console. Tentei usar `typeof(T)`, mas isso não funciona em contextos estáticos, e não tenho certeza de como obter o tipo a partir da instância. Também ouvi dizer que, devido ao apagamento de tipos em runtime, isso pode ser complicado. Em Java, eu usaria Class, mas em C# a abordagem é diferente. Como obter corretamente o tipo T de uma instância de classe genérica ou de um método? Agradeço exemplos com código! <<>>

Uso de typeof(T) em membros não estáticos da classe

Em C#, obter o tipo T dentro de uma classe genérica ou