ReSharper 2026.1 Help

代码检查:使用 'with' 表达式复制结构体

该检查会报告这样的结构体复制代码:主要根据已有结构体值生成新值,只修改了一项或少数几项成员。 在这种情况下, with 表达式能更清晰地表达“复制该值并修改这些成员”。

示例

var point = new Point { X = 1, Y = 2 }; var moved = new Point { X = point.X, Y = 10 };
var point = new Point { X = 1, Y = 2 }; var moved = point with { Y = 10 };

快速修复

with 形式更简洁,并且突出显示已更改的成员,而不是重复被复制的成员。

2026年 5月 8日