2013-09-01 95 views
1

我试图连接到MongoDB数据库:通过VB.NET连接到MongoDB的2010

Dim server As MongoServer = MongoServer.Create("mongodb://localhost") 
Dim db As MongoDatabase = server("mydb") 
Dim coll As MongoCollection = db("coll") 

Dim query = New QueryDocument("name","sid") 
Dim item As BsonDocument = coll.FindOneAs(query) 

最后一行抛出一个错误,并读取:

公众可重写功能FindOneAs(documentType As System.Type)As Object':类型MongoDB.driver.queryDocument的值不能转换为System.Type

现在我知道通过这里传递的对象是mo st大概是Type,但后来我无法继续。我应该通过什么来代替QueryDocument来执行我的查询?

回答

1

您应该使用Query类的静态方法,如EQ这意味着等于。 MongoDb的其他运算符也位于该类中。你可以找到详细信息here

Dim server As MongoServer = MongoServer.Create("mongodb://localhost") 
Dim db As MongoDatabase = server("mydb") 
Dim coll As MongoCollection = db("coll") 

Dim query = Query.EQ("name","sid") 
Dim item As BsonDocument = coll.FindOneAs(query) 
+0

谢谢我想我必须将FindOneAs函数的返回值类型转换为BsonDocument。 我会尝试你的方法.. :) – Sid06