如何使用 Microsoft.WindowsAzure.Storage.Table 的 TableOperators.Not 运算符

How to use Microsoft.WindowsAzure.Storage.Table 's TableOperators.Not operator

我正在使用 Microsoft.WindowsAzure.Storage.Table 的 TableOperators 生成 table 查询并使用 TableQuery.CombineFilters 组合子句。但是我没有看到使用 'TableOperators.Not' 来否定一个子句的方法。怎么办?

首先,像TableOperators.AndTableOperators.Or这2个运算符,可以用来连接2个过滤器。所以这两个运算符可以在 TableQuery.CombineFilters.

中使用

但是对于TableOperators.Not,它只用于一个过滤器(对clause/filter取反)。它不能用于连接 2 个过滤器。所以它不能在需要 2 个过滤器的 TableQuery.CombineFilters 中使用。

如果你想使用TableOperators.Not,你应该直接在where子句中使用它,如下所示:

TableQuery<CustomerEntity> myquery = new TableQuery<CustomerEntity>()
                .Where(TableOperators.Not + "(Email eq 'ivanyang1@hotmail.com')");