ドキュメントの検索
コレクション オブジェクトで Find()
メソッドを使用してドキュメントを取得できます。
例
ビルダを使用したドキュメントの検索
次の例では、 Builders
を使用して、 name
フィールドの値が「Bagels N Buns」であるドキュメントをrestaurants
コレクション内で検索します。
AsynchronousSynchronous対応するコードを表示するには、 タブまたは タブを選択します。
// Creates a filter for all documents that have a "name" value of "Bagels N Buns" var filter = Builders<Restaurant>.Filter .Eq(r => r.Name, "Bagels N Buns"); // Asynchronously retrieves the first document that matches the filter return await _restaurantsCollection.Find(filter).FirstOrDefaultAsync();
Find()
メソッドを使用して 1 つのドキュメントを非同期に検索する完全に実行可能な例については、 非同期検索の一例を参照してください。
// Creates a filter for all documents that have a "name" value of "Bagels N Buns" var filter = Builders<Restaurant>.Filter .Eq(r => r.Name, "Bagels N Buns"); // Retrieves the first document that matches the filter var restaurant = _restaurantsCollection.Find(filter).FirstOrDefault();
Find()
メソッドを使用して 1 つのドキュメントを同期検索する完全に実行可能な例については、 同期検索の一例 を参照してください。
LINQ を使用してドキュメントを検索する
次の例では、LINQ を使用して、 name
フィールドの値が「Bagels N Buns」であるドキュメントをrestaurants
コレクション内で検索します。
AsynchronousSynchronous対応するコードを表示するには、 タブまたは タブを選択します。
return await _restaurantsCollection.AsQueryable() .Where(r => r.Name == "Bagels N Buns").FirstOrDefaultAsync();
メソッドを使用して非同期にFind()
1 つのドキュメントを検索する完全に実行可能な例については、「 非同期検索の一例 」を参照してください。
var query = _restaurantsCollection.AsQueryable() .Where(r => r.Name == "Bagels N Buns").FirstOrDefault();
Find()
メソッドを使用して 1 つのドキュメントを同期検索する完全に実行可能な例については、 同期検索の一例 を参照してください。
期待される結果
前述の例のいずれかを実行すると、次のような結果が出力されます。
{ "_id" : ObjectId("5eb3d668b31de5d588f42950"), "name" : "Bagels N Buns", "restaurant_id" : "40363427", "cuisine" : "Delicatessen", "address" : {...}, "borough" : "Staten Island", "grades" : [...] }
詳細情報
ドキュメントの取得の詳細については、「 データの取得」ガイドを参照してください。
ビルダの使用の詳細については、「 ビルダを使用した操作 」を参照してください。
LINQ を使用してドキュメントを検索する方法については、「 LINQ 」を参照してください。