我正在尝试使用linq在C#中使用mongodb按照教程http://docs.mongodb.org/ecosystem/tutorial/use-linq-queries-with-csharp-driver/
我有:
编译器抱怨错误:无法找到查询模式的实现...
缺少什么?
--- --- EDIT
我在这里最小化了代码以说明问题 -
// .Net
using System.Collections.Generic;
// 3rd Party
using MongoDB.Bson;
using MongoDB.Driver;
using MongoDB.Driver.Builders;
using MongoDB.Driver.Linq;
namespace Chess2.Server {
public static partial class Database {
internal static MongoCollection<Document> Collection =
GetCollection<Document>();
}
public class Document {
public ObjectId Id;
public int Field;
public static IEnumerable<Document> Waiting() {
// HERE IS THE LINQ THAT DOESN"T WORK
return from item in
Database.Collection.AsQueryable<Document>()
where item.Field > 0
select item;
}
}
}
答案 0 :(得分:0)
你缺少可查询类型,至少这是我在查看教程链接后的想法。如果是查询MongoCollection
,我认为您的查询应该是:
var query = from item in MyCollection.AsQueryable<MongoCollection>() select item;
答案 1 :(得分:0)
为了找到Linq提供者,不仅要有提供者的using语句,还要有System.Linq本身。