2016-07-30 20 views
1

Ich weiß, wie einige Tabellen Einheiten von einer Azure Tabelle wie folgt zu erhalten:Azure Tabellen: Abrufen gesamte Tabelle

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

oder

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

aber ich frage mich: Gibt es eine schöne Art und Weise zu eine ganze Tabelle abrufen?

Antwort

2

Sie können eine TableQuery verwenden, um die gesamte Tabelle zu erhalten.

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);