All my applications use field level optimistic concurrency.
This works by keeping track of the original database values and performing a 3 way compare between the original values, the updated values and the current database values to decide (a) what the user updated and (b) what other users have updated.
My application groups the fields in a row and allows multiple users to update different groups in the same row without conflict.
This is because it is common for different departments to be working on different fields of the same records.
EF4.1 only seems to support very basic concurrency model based on the entire row!
Which means users will get endless conflicts when there are none …
Is it possible to override the built-in behaviour?
It is just your application logic you can implement it for example in
SaveChangesoverride. You just need three sets of values: