JetBrains Rider 2026.1 Help

代码检查:'with' 表达式会修改所有可访问的实例成员。

此检查会报告 with 表达式分配了克隆值的所有可访问实例成员。 当所有成员都被覆盖时,原始值实际上就不再被复用了。 在这种情况下,直接使用新的对象、元组或记录值通常比克隆并替换所有内容更清晰。

示例

var updated = point with { X = 10, Y = 20 }; record Point(int X, int Y);
var updated = new Point(10, 20); record Point(int X, int Y);

快速修复

用直接包含最终状态的新值替换克隆体。

2026年 5月 8日