gpt4 book ai didi

c# - 如何在 C# 和 MongoDB 版本 ="2.2.3"中向 IMongoCollection 动态添加过滤器?

转载 作者:行者123 更新时间:2023-11-30 19:55:30 27 4
gpt4 key购买 nike

这是我的代码:

var database = new MongoClient("mongodb://192.168.3.122").GetDatabase("xxxx");   
var collection = database.GetCollection<School>("School");

//var it = new List<IMongoQuery>();
//it.Add(Query.EQ("Phone", "77915656"));
//it.Add(Query.EQ("EstablishedYear", 1349));

//var query = new QueryBuilder<School>();
//query.And(it);

IMongoQuery query = new QueryDocument();

Query.And(query, Query.EQ("Phone", "77915656"));
Query.And(query, Query.EQ("EstablishedYear", 1349));
collection.Find(query).ToList(); // eror here!!!

我不知道如何从查询中获取结果?!

错误是:

'MongoDB.Driver.IMongoCollection' does not contain a definition for 'Find' and the best extension method overload 'MongoDB.Driver.IMongoCollectionExtensions.Find(MongoDB.Driver.IMongo‌​Collection, MongoDB.Driver.FilterDefinition, MongoDB.Driver.FindOptions)' has some invalid arguments

最佳答案

您的 QueryDocument 不包含 Find 需要的类型...如果您想创建过滤器,请使用过滤器构建器...我想不通:

var database = new MongoClient("mongodb://192.168.3.122").GetDatabase("xxxx");   
var collection = database.GetCollection<School>("School");

var builder = Builders<School>.Filter;
var filter = builder.Eq("Phone", "77915656");
filter = filter & builder.Eq("EstablishedYear", 1349);

var myFilteredList = collection.Find(filter).ToList();

关于c# - 如何在 C# 和 MongoDB 版本 ="2.2.3"中向 IMongoCollection 动态添加过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37358939/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com