public async Task<IEnumerable<PhotoModel>> GetPhotosFromTableAsync(
string tableName,
string partitionKey)
{
var client = _account.CreateCloudTableClient();
var table = client.GetTableReference(tableName);
var ret = new List<PhotoModel>();
TableQuery<PhotoEntity> partitionScanQuery = new TableQuery<PhotoEntity>().Where
(TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, partitionKey));
TableContinuationToken token = null;
// Page through the results
do
{
TableQuerySegment<PhotoEntity> segment = await table.ExecuteQuerySegmentedAsync(partitionScanQuery, token);
token = segment.ContinuationToken;
foreach (PhotoEntity entity in segment)
{
ret.Add(new PhotoModel(entity));
}
}
while (token != null);
return ret;
}