我正在向Azure CloudTable添加多个条目:
TableBatchOperation tableBatchOperation = new TableBatchOperation();
foreach (var entity in entities)
{
tableBatchOperation.InsertOrReplace(entity);
}
table.ExecuteBatch(tableBatchOperation);
是否可以保证在此批处理操作中插入/更新的所有条目都具有相同的Timestamp属性值?
答案 0 :(得分:2)
简短回答是:插入同一批次的实体可以有不同的时间戳。
这取决于批量大小,我猜表服务的当前负载。 我写了一个简单的单元测试来检查,你可以找到它here并在一批100个项目中(每个都有30KB的字符串属性)我可以看到几个不同的时间戳(滴答):
635516539271235769
635516539271245771
635516539271225762
但是对于较小的批次,时间戳有时是相同的。
差异实际上很小(滴答)但是我肯定不会依赖于时间戳,因为它是内部的Azure Table Service属性,并且每次更新都会更改。
我宁愿将另一个属性添加到具有批处理时间戳的实体。