使用例
Overview
使用例を示して、便利に使用できる一般的な 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; } [ ] 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; } [ ] public double[] Coordinates { get; set; } public string Street { get; set; } [ ] 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
クラスのプロパティにマップします。
カスタム直列化について詳しくは、「カスタム直列化」を参照してください。