使用roslyn获取属性类型的类型参数

时间:2018-02-26 14:34:40

标签: c# .net roslyn

我想确定一个属性的类型参数,该属性表示为具有泛型类型的IPropertySymbol。更准确地说,我想知道属性是int还是int? property.Type.OriginalDefinition告诉我它是System.Nullable<T>,但我想知道它是Nullable<int>还是其他内容。我有什么方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:1)

您正在寻找TypeArguments property,它可以为您提供。

请注意,如果属性在具有泛型类型参数的类上声明为Nullable<T>,则只有在属性符号来自闭合类型时才会为您提供具体类型(例如,SomeClass<int>而不是SomeClass<>定义。