是否有办法找出类是否在Roslyn分析仪内partial
?在IMethodSymbol
中有一个PartialImplementationPart
,但在INamedTypeSymbol
中没有类似的。
我正在编写一个源生成器,我想只在可能的情况下生成类的第二部分(如果第一部分是部分的)。
您可以使用Modifier List来检查类是否是partial。
var isPartial = classDeclaration.Modifiers
.Any(m => m.IsKind(SyntaxKind.PartialKeyword));
如果你只能访问ISymbol
,你也可以查看ISymbol.Locations
——超过一个位置是一个很好的指示,它是一个局部类。