Add optimistic concurrency support for DeleteById with new method