使用Roslyn确定类是否是抽象的

时间:2018-02-16 19:46:28

标签: c# roslyn

我在这里搜索过,我在这里找不到答案。

如何知道class是ClassDeclarationSyntax中的抽象类。

这是我的代码:

public override void VisitClassDeclaration(ClassDeclarationSyntax node)
{
    var className = node.Identifier.Text;
    var namespaceName = (node.Parent as NamespaceDeclarationSyntax)?.Name.ToString();
    var isAbastract = ??????
}

1 个答案:

答案 0 :(得分:7)

我找到了答案。这是代码:

public override void VisitClassDeclaration(ClassDeclarationSyntax node)
{
    var className = node.Identifier.Text;
    var namespaceName = (node.Parent as NamespaceDeclarationSyntax)?.Name.ToString();

    var isAbstract = node.Modifiers.Any(x => x.IsKind(SyntaxKind.AbstractKeyword));
}