Consultar el almacenamiento de tablas de Windows Azure con múltiples criterios de consulta
Estoy intentando consultar una tabla en el almacenamiento de Windows Azure e inicialmente estaba usando elTableQuery.CombineFilters
en elTableQuery<RecordEntity>().Where
funciona de la siguiente manera:
TableQuery.CombineFilters(
TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.GreaterThanOrEqual, lowDate),
TableOperators.And,
TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.LessThanOrEqual, lowDate),
TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, entityId)
));
Desafortunadamente, CombineFilters solo permite 2 criterios de consulta máx. Así que actualmente estoy haciendo esto:
var tableQuery = new TableQuery<RecordRowEntity>()
.Where(TableQuery.CombineFilters("PartitionKey", string.Format("(PartitionKey ge '{0}') and (PartitionKey le '{1}') and (RowKey eq '{2}')", low, high, entityId));
¿Hay alguna otra forma de hacerlo? Estoy preocupado de que la forma en que lo estoy haciendo actualmente es vulnerable a los cambios en la forma en que funciona el Api de Azure.