我正在尝试查询Windows Azure存储中的表格,最初是使用TableQuery.CombineFilters
在TableQuery<RecordEntity>().Where
函数中进行过滤:
我正在尝试查询 Windows Azure 存储中的表格,最初是在 TableQuery<RecordEntity>().Where
函数中使用 TableQuery.CombineFilters
进行筛选,如下所示:
TableQuery.CombineFilters(
TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.GreaterThanOrEqual, lowDate),
TableOperators.And,
TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.LessThanOrEqual, lowDate),
TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, entityId)
));
遗憾的是,CombineFilters 最多只允许 2 个查询条件。因此,我目前正在这样做:
Unfortunately CombineFilters only allows 2 query criteria max. So I'm currently doing this: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));
还有其他的方法吗?我担心目前的做法容易受到 Azure Api 工作方式变化的影响。