如何获得泛型类的名称?

时间:2019-02-14 12:35:07

标签: c# generics

考虑以下两个类别:

class GenericClass<T> where T : class
{
}

class PlainClass
{
}

我希望能够仅获得GenericClass之类的"GenericClass"的名称。对于PlainClass,我可以使用nameof进行此操作,但这不适用于通用类:

var plainName = nameof(PlainClass);
var gemericName = nameof(GenericClass)//does not compile
var gemericName1 = typeof(GenericClass<>).Name; // "GenericClass`1"

1 个答案:

答案 0 :(得分:3)

不是很简单,但是

nameof(GenericClass<object>)

评估为

"GenericClass"