That would also be a remove.
We have 2 different Problems we wanted to solve with a "soft remove"
1. If an user deletes data by error, it should be recoverable. And this recover can be in same session or in another one. Also users have independend databases which are synchronized. So if one user deletes data, also the other ones should no longer see it (normal usecase, the recovery is the extension where all users should then see it again).
2. If a remove is triggered on another machine, it is done like in example below.
If it is done in this way, sometimes an exception occures, and the DevExpress grid only shows a red cross.
The last steps of a trace Shows that the XtraGrid tries to get data, but Telerik throws an exception instead. It no longer finds an objects where properties are asked for.
Telerik.OpenAccess.Exceptions.NoSuchObjectException: No row for
column, OperationCompleted completed)<BR>
rows, BaseDataControllerHelper dataHelper, Int
Normally with databinding and just a BindingList items can be removed / added / altered without a problem and changes are reflected on UI immediatly. with the objectscope as BindingSource changes on the datasource does not seem forward INotifyPropertyChanged to XtraGrid. So it should also be a Workaround to only delete data when the data is not bound to a Grid. (Ugly, but works quite well).
Very ugly workaround:
Funilly it is also much faster if we copy the complete objectview.list in a new list<T> and remove deleted items form new list while copying and then asserting the new list as the objectsviews source. This is very ugly to go each time one time through complete list, but nevertheless it seems to be fast (but this is a point where using the ORM lets us create ugly Workarounds, for the project an openaccess subscription was made since the days of Vanatec, and a lot of extras where coded for the old api so it will not so easy replaced with the new one or another product (even the demo project with new api showed similiar speed problems).
So i still search for a better solution to soft delete an object with telerik.