Si tengo una firma de método como
public string myMethod<T>( ... )
¿Cómo puedo, dentro del método, obtener el nombre del tipo que se proporcionó como argumento de tipo? Me gustaría hacer algo similar a typeof(T).FullName, pero eso realmente funciona ...

typeof(T).FullNamedebería funcionar. ¿Qué está pasando en su lugar?Respuestas:
Tu código debería funcionar.
typeof(T).FullNamees perfectamente válido. Este es un programa completamente compilable y funcional:Ejecutando las impresiones anteriores (como se esperaba):
fuente
<int?>" Si es así, funciona, pero obtienesSystem.Nullable<int>(en la sintaxis del nombre completo), que es lo que esperarías ...nameof(T)ytypeof(T).Nameharía lo mismo. Resulta quenameof(T)solo vuelveT.typeof(T).Nameytypeof(T).FullNameestán trabajando para mí. Obtengo el tipo pasado como argumento.fuente
Suponiendo que tenga alguna instancia de una T disponible, no es diferente a cualquier otro tipo.
fuente