使用 Azure Cosmos Db Table API 查询日期范围时出现无效筛选器异常

Getting InvalidFilterException when querying a date range using Azure CosmosDb Table API

我正在尝试使用 Table API.

从 CosmosDb 中获取给定日期范围内带有时间戳的一组结果

这就是我构建查询的方式:

        var from = TableQuery.GenerateFilterConditionForDate("Timestamp", QueryComparisons.GreaterThanOrEqual,
            new DateTimeOffset(2018, 2, 15, 15, 2, 45, TimeSpan.Zero));

        var to = TableQuery.GenerateFilterConditionForDate("Timestamp", QueryComparisons.LessThan,
            new DateTimeOffset(2018, 2, 15, 15, 3, 45, TimeSpan.Zero));

        return new TableQuery<Audit>()
            .Where(
                TableQuery.CombineFilters(from, TableOperators.And, to));

但是,当我 运行 这个查询时,我得到以下 InvalidFilterException 类型的异常:

ODataException: Unrecognized 'Edm.String' literal 'datetime'2018-02-15T15:02:45.0000000Z'' at '14' in '(Timestamp ge datetime'2018-02-15T15:02:45.0000000Z') and (Timestamp ge datetime'2018-02-15T15:03:45.0000000Z')'.

谁能帮我理解这是什么意思?我做错了什么吗?

Can anyone help me understand what this means? Am I doing something wrong?

我也可以用 Microsoft.Azure.CosmosDB.Table version 1.0.0 重现这个。

如果我将Microsoft.Azure.CosmosDB.Table版本的版本更新为1.1.0那么也不例外,过滤结果计数总是等于0。

现在好像不支持Timestamp过滤了。您还可以将 feedback 交给 Azure 团队。