ReSharper 2026.1 Help

代码检查:用 'switch' 表达式替换三元表达式。

该检查会报告那些重复测试同一输入的嵌套条件表达式,这些表达式可以重写为 switch 表达式。 当一连串 ?: 条件表现为紧凑的多分支选择时,通常会出现这种情况。

示例

var score = status == OrderStatus.New ? 0 : status == OrderStatus.Paid ? 1 : status == OrderStatus.Shipped ? 2 : 3;
var score = status switch { OrderStatus.New => 0, OrderStatus.Paid => 1, OrderStatus.Shipped => 2, _ => 3 };

快速修复

switch 表达式比冗长的三元链更易于阅读,并使每个分支都明确。

2026年 5月 8日