Mongodb C#Mongo驱动程序-如何进行案例无关搜索

Mongodb C#Mongo驱动程序-如何进行案例无关搜索,mongodb,mongodb-.net-driver,Mongodb,Mongodb .net Driver,我有一个要求,让所有井创建的用户名单。下面是我为这个需求编写的代码。但是x.CreatedBy.ToLower()会引发下面列出的异常: FilterDefinition<WellInfoDocument> userFilter = builder.Where(x => users.Contains(x.CreatedBy.ToLower())); var documentList = await GetCollection<

我有一个要求,让所有井创建的用户名单。下面是我为这个需求编写的代码。但是x.CreatedBy.ToLower()会引发下面列出的异常:

            FilterDefinition<WellInfoDocument> userFilter = builder.Where(x => users.Contains(x.CreatedBy.ToLower()));
            var documentList = await GetCollection<WellInfoDocument>().FindAsync<WellInfoDocument>(userFilter);```


 System.ArgumentException: Unsupported filter: Contains(value(System.Collections.Generic.List`1[System.String])).
   at MongoDB.Driver.Linq.Translators.PredicateTranslator.Translate(Expression node)
   at MongoDB.Driver.Linq.Translators.PredicateTranslator.Translate(Expression node, IBsonSerializerRegistry serializerRegistry)
   at MongoDB.Driver.MongoCollectionImpl`1.CreateFindOperation[TProjection](FilterDefinition`1 filter, FindOptions`2 options)
   at MongoDB.Driver.MongoCollectionImpl`1.FindAsync[TProjection](IClientSessionHandle session, FilterDefinition`1 filter, FindOptions`2 options, CancellationToken cancellationToken)
   at MongoDB.Driver.MongoCollectionImpl`1.<>c__DisplayClass43_0`1.<FindAsync>b__0(IClientSessionHandle session)
   at MongoDB.Driver.MongoCollectionImpl`1.UsingImplicitSessionAsync[TResult](Func`2 funcAsync, CancellationToken cancellationToken)


Any suggestions to fix is welcome. TIA

FilterDefinition userFilter=builder.Where(x=>users.Contains(x.CreatedBy.ToLower());
var documentList=await GetCollection().FindAsync(userFilter)```
System.ArgumentException:不支持的筛选器:包含(值(System.Collections.Generic.List`1[System.String])。
位于MongoDB.Driver.Linq.Translators.PredicateTranslator.Translate(表达式节点)
位于MongoDB.Driver.Linq.Translators.PredicateTranslator.Translate(表达式节点,IBMSOnSerializerRegistry serializerRegistry)
在MongoDB.Driver.MongoCollectionImpl`1.CreateFindOperation[Tproject](过滤器定义`1过滤器,FindOperations`2选项)
在MongoDB.Driver.MongoCollectionImpl`1.FindAsync[tProject](IClientSessionHandle会话,FilterDefinition`1筛选器,FindOptions`2选项,CancellationToken CancellationToken)
在MongoDB.Driver.MongoCollectionImpl`1.c__显示类43_0`1.b__0(IClientSessionHandle会话)
在MongoDB.Driver.MongoCollectionImpl`1.UsingImplicitSessionAsync[TResult](Func`2 funcAsync,CancellationToken CancellationToken)
欢迎提出任何修复建议。短暂性脑缺血发作
试试过滤器

 var filter = Builders<WellInfoDocument>.Filter.In(x => x.CreatedBy.ToLower(),users.Select(x => x.Id).ToList());
 var documentList = await GetCollection<WellInfoDocument>().FindAsync<WellInfoDocument>(filter);
var filter=Builders.filter.In(x=>x.CreatedBy.ToLower(),users.Select(x=>x.Id.ToList());
var documentList=await GetCollection().FindAsync(过滤器);
我不确定你的类型或他们看起来如何,但你应该能够从这个例子中推断出来