Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.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#_Vb.net_Mongodb_Mongodb .net Driver - Fatal编程技术网

MongoDB C#驱动程序多字段查询

MongoDB C#驱动程序多字段查询,c#,vb.net,mongodb,mongodb-.net-driver,C#,Vb.net,Mongodb,Mongodb .net Driver,使用MongoDB C#驱动程序如何在查询中包含多个字段(我使用vb.net) 我知道怎么做(对于name1=value1) 如何修改此查询,使其能够查找name1=value1和name2=value2中的所有文档 (类似于) 而且并不总是做你想做的事情(我发现在And上执行not操作时就是这样)。您还可以创建一个新的QueryDocument,如下所示。这正是你想要的 Query.Not(new QueryDocument { { "Results.Instance", inst

使用MongoDB C#驱动程序如何在查询中包含多个字段(我使用vb.net)

我知道怎么做(对于
name1=value1

如何修改此查询,使其能够查找
name1=value1
name2=value2
中的所有文档

(类似于)


而且并不总是做你想做的事情(我发现在And上执行not操作时就是这样)。您还可以创建一个新的QueryDocument,如下所示。这正是你想要的

 Query.Not(new QueryDocument { 
    { "Results.Instance", instance }, 
    { "Results.User", user.Email } }))

我想在不同的领域搜索文本,而全文搜索即使浪费了这么多时间也不适合我。所以我试过这个

var filter = Builders<Book>.Filter.Or(
    Builders<Book>.Filter.Where(p=>p.Title.ToLower().Contains(queryText.ToLower())),
    Builders<Book>.Filter.Where(p => p.Publisher.ToLower().Contains(queryText.ToLower())),
    Builders<Book>.Filter.Where(p => p.Description.ToLower().Contains(queryText.ToLower()))
            );
List<Book> books = Collection.Find(filter).ToList();
var filter=Builders.filter.Or(
Builders.Filter.Where(p=>p.Title.ToLower().Contains(queryText.ToLower()),
Builders.Filter.Where(p=>p.Publisher.ToLower().Contains(queryText.ToLower()),
Builders.Filter.Where(p=>p.Description.ToLower().Contains(queryText.ToLower()))
);
List books=Collection.Find(filter.ToList();
您可以使用:

var arrayFilter = Builders<BsonDocument>.Filter.Eq("student_id", 10000) 
 & Builders<BsonDocument>.Filter.Eq("scores.type", "quiz");
var arrayFilter=Builders.Filter.Eq(“学生id”,10000)
&Builders.Filter.Eq(“分数.类型”,“测验”);
参考:

var filter = Builders<Book>.Filter.Or(
    Builders<Book>.Filter.Where(p=>p.Title.ToLower().Contains(queryText.ToLower())),
    Builders<Book>.Filter.Where(p => p.Publisher.ToLower().Contains(queryText.ToLower())),
    Builders<Book>.Filter.Where(p => p.Description.ToLower().Contains(queryText.ToLower()))
            );
List<Book> books = Collection.Find(filter).ToList();
var arrayFilter = Builders<BsonDocument>.Filter.Eq("student_id", 10000) 
 & Builders<BsonDocument>.Filter.Eq("scores.type", "quiz");