Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在MongoDb C#驱动程序中链接多个查询操作_C#_Mongodb - Fatal编程技术网

如何在MongoDb C#驱动程序中链接多个查询操作

如何在MongoDb C#驱动程序中链接多个查询操作,c#,mongodb,C#,Mongodb,我试图用MongoDb C#驱动程序创建一个复杂的查询表达式。到目前为止,我主要依靠LINQ.AsQueryable()特性,这些特性工作得很好,但现在我需要运行一些更新操作,看起来我需要使用QueryBuilder来实现这一点 但是,我不知道如何创建一个将多个查询运算符串在一起的复杂查询 我想这样做: var query = Query<QueueMessageItem> .EQ( qi => qi.Type, queueName)

我试图用MongoDb C#驱动程序创建一个复杂的查询表达式。到目前为止,我主要依靠LINQ.AsQueryable()特性,这些特性工作得很好,但现在我需要运行一些更新操作,看起来我需要使用QueryBuilder来实现这一点

但是,我不知道如何创建一个将多个查询运算符串在一起的复杂查询

我想这样做:

var query = Query<QueueMessageItem>
            .EQ( qi => qi.Type, queueName)
            .EQ("Started", null);
var query=query
.EQ(qi=>qi.Type,queueName)
.EQ(“开始”,空);
但显然这不起作用,因为.EQ()和所有其他查询运算符都不会返回可链接的查询对象


如何使用查询并添加多个搜索运算符?

您需要嵌套查询运算符。像这样的

Query.Or(Query.EQ("t", "F"), Query.EQ("t", "M"))

您是否尝试过嵌套它们(
Query.Or(Query.EQ(“t”,“F”),Query.EQ(“t”,“M”))
)?没有-我错过了,因为Query没有。是的,那会管用,但遗憾的是司机不能用链子拴车,这会更自然。同意,用流畅的链子拴车。顺便说一句,我喜欢你的博客。