Updating an object on Azure Table Storage - is there a way to get the new Timestamp?

advertisements

I'm updating an object in AzureTableStorage using the StorageClient library with

    context.UpdateObject(obj);
    context.SaveChangesWithRetries(obj);

when I do this, is there any way to get hold of the new timestamp for obj without making another request to the server?

Thanks

Stuart


MSDN page has some guidance on the usage of Timestamp field:

Timestamp Property

The Timestamp property is a DateTime value that is maintained on the server side to record the time an entity was last modified. The Table service uses the Timestamp property internally to provide optimistic concurrency. You should treat this property as opaque: It should not be read, nor set on insert or update operations (the value will be ignored).

This implies that it is really implementation details of the table storage, you should not rely the Timestamp field to represent timestamp of last update.

If you want a field which is guaranteed to represent time of last write, create new field and set it on every update operatio. I understand this is more work (and more storage space) to maintain the field, but that would actually automatically resolves your question -- how to get the timestamp back, because you would already know it when calling context.UpdateObject().