【发布时间】:2021-09-19 17:01:56
【问题描述】:
在我的班级中,我有一个通用类型的属性。当我“遍历”语法树时,在VisitPropertyDeclaration 中我得到node.Type is GenericNameSyntax。
如何获取属性类型对应的符号和语法引用?
我尝试过的:
-
SemanticModel.GetSymbolInfo(node).Symbol为空 -
SemanticModel.GetTypeInfo(node).Type、SemanticModel.GetTypeInfo(node).Type.OriginalDefinition返回符号,但DeclaringSyntaxReferences属性为空。
我猜这个信息丢失的原因是因为泛型类型在运行时被解析,所以刚刚编译的程序的 SemanticModel 没有用这个信息更新?
编辑:我发现了一个编译错误,它我已经修好了。但我仍然无法获得 DeclaringSyntaxReferences。这可能是因为此类型是在非项目引用中声明的吗?
【问题讨论】: