So, that's normal in a networked application scenario, but if it's happening all the time on one of your business objects, then the UpdateConcurrencyType might need to be changed to Off or OptimisticRowVersion if it's set on OptimisticAllFields. The exception being throw contains properties that show the row causing the data collision.