确定属性是否为自动属性

Joh*_*son 1 c# analyzer roslyn

我想弄清楚房产是否是汽车房产,即 public int Foo { get; set; }

盯着看了一会儿PropertyDeclarationSyntax,IPropertySymbol却没有发现什么。

我猜另一种方法是一种扩展方法,它评估 if get&set不包含任何语句是一种方法,但感觉不是很优雅。

SLa*_*aks 5

AccessorDeclarationSyntax检查中的任何 es 是否PropertyDeclarationSyntax具有AccessorList非 null Body。

您可以通过使用语法可视化工具(来自 Roslyn SDK 扩展)查看任何属性声明来看到这一点。

  • 有一个新属性:“ExpressionBody”。如果已分配,则“Body”为空,但该属性不是“自动属性”。 (3认同)