2009-09-04 10 views
11

Tengo una base de datos linq-a-sql en la que deseo registrar algunos de los cambios realizados en una entidad. En este momento, obtengo las entidades actualizadas leyendo la propiedad DataContext.GetChangeSet(). Updates, pero eso no me proporciona los campos de la entidad que se modificaron.Cómo determinar qué campos cambiaron en un Objeto Linq-To-Sql

¿Hay alguna manera de saber qué campos se han modificado en una entidad actualizada?

Gracias

Respuesta

18

El DataTable tiene un método GetModifiedMembers que devolverá una lista de los miembros que han cambiado para una instancia de entidad especificada.

DataClasses1DataContext context; 
Class1 instance = context.GetChangeSet().Updates.OfType<Class1>().First(); 
context.Class1s.GetModifiedMembers(instance); 
Cuestiones relacionadas