AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。

使用例

使用例を示して、便利に使用できる一般的な MongoDB 操作のスターティング ポイントをご紹介します。 各例にて次の情報が提供されています。

  • 同期フレームワークと非同期フレームワークで操作を実行する方法を示すコード スニペット

  • 操作を使用する完全に実行可能なコンソール アプリケーションへのリンク

  • 例を実行した後に予想される結果

Tip

アプリケーションで同期フレームワークと非同期フレームワークのどちらを使用するかは、ユースケースによって異なります。 同期呼び出しは、単純なクエリ ワークフローや順次ロジックを実装する必要がある場合に適しています。 アプリケーションが複数の同時データベースリクエストに依存している場合、またはプログラムが実行を継続するためにデータベースからの即座の応答を必要としない場合は、非同期呼び出しの使用を検討してください。

目的に最も適したフレームワークを決定するために、両方のアプローチを試すことをお勧めします。

これらの例では、Atlas が提供するサンプル データセットを使用します。Atlas スタートガイド」の手順に従って MongoDB Atlas の無料クラスターのデータベースにロードするか、サンプル データセットをローカルの MongoDB インスタンスにインポートすることができます。

データセットをインポートしたら、使用例をコピーして、お好みの開発環境に貼り付けることができます。 MongoDB .NET/C# ドライバーの使用開始について詳しくは、クイック スタートをご覧ください。 使用例をコピーしたら、接続 URI を編集して例えを MongoDB インスタンスに接続する必要があります。

// Replace the following with your MongoDB deployment's connection string.private static string _mongoConnectionString = "<connection string>";

MongoDB インスタンスへの接続の詳細については、接続ガイド を参照してください。

このセクションの使用例では、 restaurantsコレクション内のドキュメントに対して操作を実行する方法を示します。 例では、次のRestaurant 、 Address 、 GradeEntryクラスを使用して、このコレクション内のデータをモデル化します。

public class Restaurant{ public ObjectId Id { get; set; } public string Name { get; set; } [BsonElement("restaurant_id")] public string RestaurantId { get; set; } public string Cuisine { get; set; } public Address Address { get; set; } public string Borough { get; set; } public List<GradeEntry> Grades { get; set; }}
public class Address{ public string Building { get; set; } [BsonElement("coord")] public double[] Coordinates { get; set; } public string Street { get; set; } [BsonElement("zipcode")] public string ZipCode { get; set; }}
public class GradeEntry{ public DateTime Date { get; set; } public string Grade { get; set; } public float? Score { get; set; }}

注意

restaurantsコレクションのドキュメントは、スニペット ケースの命名規則を使用します。このガイドの例では、ConventionPack を使用してコレクション内のフィールドをパスカル ケースに逆シリアル化し、Restaurantクラスのプロパティにマップします。

カスタム直列化について詳しくは、「カスタム直列化」を参照してください。