I wonder if it wouldn't be better to use an "INSTEAD OF" trigger (delete) on the table... or just don't lie to LINQ: if you want to do an UPDATE (not a DELETE), then update the object (don't delete it). For example, write a method on the data-context that simulates delete, rather than using DeleteOnSubmit
.
You may also be able to do something with overriding SubmitChanges and investigating the deltas, but I'm not sure it is a good idea
Marc Gravell
2009-05-27 11:57:06