C# SyntaxWalker访问法

C# SyntaxWalker访问法,c#,roslyn,C#,Roslyn,我对类SyntaxWalker和方法有问题: VisitMemberAccessExpression(MemberAccessExpressionSyntax node) 我想得到节点类型,如果相等,例如:“Person”添加到列表中。 我使用: 但我有一个错误:“对象引用未设置为对象的实例”为什么? 我的领域: private ISemanticModel semanticModel; public string modelName { get; private set; } 设置模型名称

我对类SyntaxWalker和方法有问题:

VisitMemberAccessExpression(MemberAccessExpressionSyntax node)
我想得到节点类型,如果相等,例如:“Person”添加到列表中。 我使用:

但我有一个错误:“对象引用未设置为对象的实例”为什么? 我的领域:

private ISemanticModel semanticModel;
public string modelName { get; private set; }
设置模型名称:

modelName = type.BaseType.TypeArguments[0].Name.ToString();
我已经做了几天了,不知道该怎么办,请帮忙。 我是按照建议这样做的:

仅凭这些片段很难为您提供帮助。您能否发布一个简短但完整的示例代码来演示您的问题?您试图收集哪些节点
MemberAccessExpressionSyntax
ClassDeclarationSyntax
或其他类型的节点?@AlexFilipovici我只想选择类型在“ModelName”中指定的节点。我认为ClassDeclarationSyntax的全部要点是。。svick I完整代码:无论如何,我只想写类型为.AnyProp type==ModelName类型的视图属性。我还发现自己在想,您在这方面问了很多问题,但似乎没有找到任何有用的答案。通常情况是这样的,或者你可以通过向上投票的方式指出你认为最有帮助的人吗?
modelName = type.BaseType.TypeArguments[0].Name.ToString();