我如何搜索小写在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文档解决了这个问题。使用以下代码进行比较:
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)
查看这里的示例代码