如何确定Linq-To-Sql对象中哪些字段已更改

我有一个linq-to-sql数据库,我想在其中记录对实体所做的一些更改。 现在,我通过读取DataContext.GetChangeSet()。Updates属性来获取更新的实体,但这并没有为我提供已更改的实体的字段。

有没有办法知道在更新的实体中修改了哪些字段?

谢谢

DataTable有一个方法GetModifiedMembers,它将返回已为指定实体实例更改的成员列表。

DataClasses1DataContext context; Class1 instance = context.GetChangeSet().Updates.OfType().First(); context.Class1s.GetModifiedMembers(instance);