ReSharper 2026.1 Help

代码检查:使用 'with' 表达式复制匿名对象

该检查会报告在创建匿名对象时,大多数成员是从已有匿名对象复制,只有少量值发生变化的情况。 在这种情况下, with 表达式能更直接地表达复制并修改的意图。

示例

var source = new { A = 1, B = true, C = "abc" }; var copy = new { A = source.A, B = false, C = source.C };
var source = new { A = 1, B = true, C = "abc" }; var copy = source with { B = false };

快速修复

with 表达式可以省去重复复制成员,并突出显示已更改的值。

2026年 5月 8日