ここのチュートリアルに従ってmongodbでC#でlinqを使用しようとしていますhttp://docs.mongodb.org/ecosystem/tutorial/use-linq-queries-with-csharp-driver/
私は持っている:
- MongoDB.Driver.Linq の using ディレクティブ
- 標準の ObjectId Id フィールドのみを提供する別のクラスを継承する、いくつかのフィールドを持つクラス。
- Connection.GetCollection を取得したタイプ MongoCollection の前記クラスのコレクションへの参照
- 最後に、私のクエリ - from item in MyCollection.AsQueryable() select item;
コンパイラは、「エラー: クエリ パターンの実装が見つかりませんでした...」と不平を言います。
何が欠けている?
- -編集 - -
問題を説明するために、ここでコードを最小化しました-
// .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;
}
}
}