Result of a Query.eq in mondodb



我需要知道Query.Eq("Name", Textbox1.Text)返回的值,以查看数据库中是否真的存在Textbox1.Text的名称,如果不存在,我必须向用户显示一个消息框。我已经尝试将Query.EQtrue进行比较,但类型并不相同。

有人知道如何解决这个问题吗?

如果要验证没有结果,使用Query的一种方法是:

var client = new MongoClient("mongodb://localhost");
var server = client.GetServer();
var database = server.GetDatabase("test"); // "test" is the name of the database
var collection = database.GetCollection("myCollection");
var results = collection.Find(Query.EQ("Name", Textbox1.Text));
if (results.Count() == 0)
{
    Console.WriteLine("no matches");
    // or MessageBox.Show(...)
}

返回的results对象是一个MongoCursor,它实现IEnumerable

QueryEQ的静态方法仅用于构建一个QueryBuilder实例,该实例可以传递给接受将IMongoQuery实现为参数的对象MongoCollection上各种方法中的任何一个。

如果您不需要收集特定的匹配项,您也可以只使用 Count

var totalMatches = collection.Count(Query.EQ("Name", Textbox1.Text));

最新更新