我如何搜索小写在Azure DocumentDb

本文关键字:Azure DocumentDb 搜索 何搜索 | 更新日期: 2023-09-27 18:07:15

我想搜索documentdb的ID以及包含,开始和结束于,但是当我尝试创建一个小写搜索。

await this.noSqlDataContext.GetDocumentsAsync<Index>(e => e.Id.ToLowerInvariant().Equals(key.ToLowerInvariant()));

我得到这个错误:

"exceptionMessage": "Method 'ToLowerInvariant' is not supported.'r'nActivityId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",

我如何搜索小写在Azure DocumentDb

我通过查看这里的Azure DocumentDb文档解决了这个问题。使用以下代码进行比较:

e => e.Id.ToLower() == key.ToLower()

如果Id和key是字符串类型,则可以按如下方式修改lambda表达式:

(e => String.Compare(e.Id, key, true) == 0)

其中true设置比较忽略所有字符大小写

根据你的评论,如果你只是想比较而忽略大小写,你可以简单地做:

(e => string.Compare(e.Id, key, StringComparison.OrdinalIgnoreCase) == 0)

查看这里的示例代码