如何使此案例不敏感?目前它可以工作,但只有在案件匹配时。
var query = Query.Matches("Name", searchString);
答案 0 :(得分:2)
您可以将所有名称存储为大写或小写,并将搜索查询转换为正确的大小写。如果您想保留原始外壳,可以创建一个额外的字段进行搜索,全部为大写/小写。然后将您的查询转换为所有大写/小写,并查询该字段的大写/小写版本。这比使用正则表达式要好得多。
例如:
var query = Query.Matches("Name_Upper", searchString.ToUpper());
答案 1 :(得分:1)
您可以使用正则表达式执行此操作。 Mongo查询看起来像这样:
find({"Name": {"$regex": searchString, "$options": "i"}})
在C#中你会写这样的东西:
Query.Matches("Name", new BsonDocument(new Dictionary<string, object> {
"$regex": searchString,
"$options": "i"
}));