2

I know how to get some table entities from an Azure table like this:

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting(...);
CloudTableClient tableClient = storageAccount.CreateCloudTableClient();
CloudTable table = tableClient.GetTableReference("table");
TableOperation retrieveOperation = TableOperation.Retrieve(...);
TableResult retrievedResult = table.Execute(retrieveOperation);

or

TableQuery<MyEntity> query = new TableQuery<MyEntity>().Where(TableQuery.GenerateFilterCondition(...);

but I was wondering: is there a nice way to retrieve an entire table?

Eutherpy
  • 4,471
  • 7
  • 40
  • 64

1 Answers1

3

You can use a TableQuery to get the entire table.

var list = new List<MyEntity>();
var table = tableClient.GetTableReference("table");
var tableQuery = new TableQuery<UserEntity>();
TableContinuationToken continuationToken = null;
do
{
    var query = await table.ExecuteQuerySegmentedAsync(
        tableQuery, continuationToken).ConfigureAwait(false);
    list.AddRange(query.Results);
    continuationToken = query.ContinuationToken;
} while (continuationToken != null);
Eli Arbel
  • 22,391
  • 3
  • 45
  • 71