Session: How to Check if Entity has Changed

To check if a specific entity differs from the one downloaded from server, the HasChanged method from the Advanced session operations can be used.


bool HasChanged(object entity);
entity object Instance of entity for which changes will be checked.
Return Value
bool Indicated if given entity has changed.


Employee employee = session.Load<Employee>("employees/1-A");
bool hasChanged = session.Advanced.HasChanged(employee); // false
employee.LastName = "Shmoe";
hasChanged = session.Advanced.HasChanged(employee); // true