我试图找出如果一个属性是一个自动财产即 public int Foo { get; set; }
确定是否一个属性是一个自动财产
瞪了,而在PropertyDeclarationSyntax
和IPropertySymbol
,但没有发现任何东西。
猜测另一种是评估是否get
& set
不包含任何语句是一种方式,但它并不感到很优雅的扩展方法。
我试图找出如果一个属性是一个自动财产即 public int Foo { get; set; }
确定是否一个属性是一个自动财产
瞪了,而在PropertyDeclarationSyntax
和IPropertySymbol
,但没有发现任何东西。
猜测另一种是评估是否get
& set
不包含任何语句是一种方式,但它并不感到很优雅的扩展方法。
检查PropertyDeclarationSyntax
的中的AccessorDeclarationSyntax
是否有非空Body
。
您可以通过查看使用Syntax Visualizer(来自Roslyn SDK扩展)的任何属性声明来查看此内容。
有一个新的属性:'ExpressionBody'。如果已分配,则“Body”为空,但该属性不是“自动属性”。 – Logerfo
从技术上讲,没有自动属性。它是编译器变成隐式字段的语法糖。 – Abion47