private void Index(List <ChainPartEntry> chainParts) { CloudTable table = Configuration.GetChainTable(); TableBatchOperation batch = new TableBatchOperation(); var last = chainParts[chainParts.Count - 1]; foreach (var entry in chainParts) { batch.Add(TableOperation.InsertOrReplace(entry.ToEntity())); if (batch.Count == 100) { table.ExecuteBatchAsync(batch).GetAwaiter().GetResult(); batch = new TableBatchOperation(); } IndexerTrace.RemainingBlockChain(entry.ChainOffset, last.ChainOffset + last.BlockHeaders.Count - 1); } if (batch.Count > 0) { table.ExecuteBatchAsync(batch).GetAwaiter().GetResult(); } }