这里有些困惑,以下代码会导致 DataTable 发生更改,而我不希望它这样做。DataTable 内部是否没有实际的单个值更改管理?还是我错过了什么?
var table = new DataTable();
table.Columns.Add("Name", typeof(string));
table.Rows.Add("Sample Name");
table.AcceptChanges();
table.Rows[0].SetField("Name", "Sample Name");
var changes = table.GetChanges();
// expecting null, actually returns changes
我本来希望该表在内部使用一些预先构建的逻辑来确定新值是否确实与当前值不同。
为什么会这样?