Roslyn 检测三元运算符,如 ? :
Roslyn detect ternary operator like ? :
我一直在寻找一个解决方案,它可以使用 roslyn 分析器库找到像 true ? DoIt() : DoItNot();
这样的三元运算符。
我提出了以下解决方案,但是这个 returns 只有 "standard" if-else-Expressions。
var ifStatement = tree.GetRoot().DescendantNodes().OfType<IfStatementSyntax>().First();
我确实搜索了另一个 SyntaxKind
,但没有找到我要找的东西。
因此,如果有人能解决我的问题,我将非常高兴。
tree.GetRoot()
.DescendantNodes()
.Where(node => node.IsKind(SyntaxKind.ConditionalExpression))
我一直在寻找一个解决方案,它可以使用 roslyn 分析器库找到像 true ? DoIt() : DoItNot();
这样的三元运算符。
我提出了以下解决方案,但是这个 returns 只有 "standard" if-else-Expressions。
var ifStatement = tree.GetRoot().DescendantNodes().OfType<IfStatementSyntax>().First();
我确实搜索了另一个 SyntaxKind
,但没有找到我要找的东西。
因此,如果有人能解决我的问题,我将非常高兴。
tree.GetRoot()
.DescendantNodes()
.Where(node => node.IsKind(SyntaxKind.ConditionalExpression))