保存 table/column 更新 c# 实体

Saving table/column updates c# entity

我正在尝试找到一种更简洁的方法来保存 table/column 更新。我有一个代表当前订单 table 条目的对象和一个包含所有更新值的对象。我想将每个变量与每个对象中的匹配名称进行比较,如果不同则将更新保存到数据库中。 我目前的做法(我知道写得不好)如下:

if (currentOrder.Comment != editedOrder.Comment)
{
    createOrderUpdateRecord("Comment", currentOrder.Comment.ToString(), editedOrder.Comment.ToString(), OrderID);
    currentOrder.Comment = editedOrder.Comment ;
    anyChangesMade = true;
}
if (currentOrder.CustomerName != editedOrder.CustomerName )
{
    createOrderUpdateRecord("CustomerName ", currentOrder.CustomerName .ToString(), editedOrder.CustomerName .ToString(), OrderID);
    currentOrder.CustomerName = editedOrder.CustomerName ;
    anyChangesMade = true;
}

然后在 createOrderUpdateRecord 方法中,我将信息保存到编辑 table。

如果有人感兴趣,我最终使用启用了跟踪器的数据库上下文库和 entity framework 来跟踪对 table 字段的更改,这完美地完成了工作

如果您在参考 table/column-updates 时使用普通的 .NET Winforms DataGridView:

有一个名为“CellValueChanged”的事件。还有“CellEndEdit”。如果您订阅了其中任何一个,则可以将“已更改”变量设置为 true 以跟踪是否必须更新数据库中的值。