Overview
.NET/ C#ドライバーは NuGetパッケージで、 MongoDBに接続して通信するために使用できます 。このガイドでは、 .NET/ C#ドライバー を使用してMongoDB AtlasでホストされているMongoDBクラスターに接続するアプリケーションを作成する方法について説明します。
Tip
MongoDB Atlas は、MongoDB 配置をホストする完全管理のクラウドデータベース サービスです。このガイドの手順に従い、独自の無料(クレジット カード不要)MongoDB Atlas 配置を作成できます。
このガイドに従って、サンプルC#アプリケーションをMongoDB Atlas配置に接続します。別のドライバーまたは プログラミング言語を使用してMongoDBに接続する場合は、 公式ドライバーのリストを参照してください。
.NET/ C#ドライバーをダウンロード
これらの手順を完了すると、新しい.NETフレームワークプロジェクトと.NET/ C#ドライバーがインストールされます。
MongoDB Atlasクラスターの配置
MongoDB Atlas では無料階層の MongoDB 配置を作成して、データを保存および管理できます。 MongoDB Atlas は、MongoDB databaseをクラウドでホストおよび管理します。
Atlas に無料のMongoDBデプロイを作成します。
MongoDB の使用開始ガイドを完了して、新しい Atlas アカウントを設定し、サンプルデータを新しい無料階層の MongoDB 配置にロードします。
これらの手順を完了すると、Atlas に新しい無料階層の MongoDB 配置、データベースユーザーの認証情報、データベースに サンプル データがロードされます 。
接続文字列の作成
MongoDB配置に接続するには、 接続string とも呼ばれる 接続 URIMongoDB を提供します。これは、 配置に接続する方法と接続中の動作をドライバーに指示します。
接続stringには、配置のホスト名またはIPアドレスとポート、認証メカニズム、ユーザー認証情報(該当する場合)、および接続オプションが含まれます。
Tip
自己管理型(Atlas 以外)配置に接続するには、「 MongoClient の作成 」を参照してください。
MongoDB Atlas接続文字列を見つけます。
Clusters前のステップで作成した配置の接続文字列を取得するには、AtlasDatabase アカウントにログ、Connect セクションの下の ページに移動します。新しい配置で [] ボタンをクリックします。

データベースユーザーをまだ設定していない場合、 MongoDB は新しいユーザーを作成して設定するように要求します。
Connect to your application セクションの下の Drivers ボタンをクリックし、Driver 選択メニューと Version 選択メニューからインストールしたバージョンに最適化されたバージョンから [C# / .NET] を選択します。
接続文字列のみを表示するには、View full code sample オプションが選択されていないことを確認します。
環境変数を設定します。
シェルで次のコードを実行して、MongoDB接続文字列を環境変数に保存します。<your MongoDB URI> を、前の手順でファイルに保存した接続文字列に置き換えます。
export MONGODB_URI="<your MongoDB URI>"
注意
PowerShell
Microsoft PowerShell を使用している場合は、代わりに次のコマンドを実行します。
set MONGODB_URI="<your MongoDB URI>"
認証情報を環境変数に保存するのは、 ソースコードで認証情報をハードコーディングするよりも安全です。
これらの手順を完了すると、データベースのユーザー名とパスワードを含む接続stringが作成されます。
サンプル クエリの実行
.NET/ C#アプリケーションを作成します。
次のコードをコピーして、アプリケーション内のProgram.csファイルに貼り付けます。
using MongoDB.Driver; using MongoDB.Bson; var connectionString = Environment.GetEnvironmentVariable("MONGODB_URI"); if (connectionString == null) { Console.WriteLine("You must set your 'MONGODB_URI' environment variable. To learn how to set it, see https://www.mongodb.com/ja-jp/docs/drivers/csharp/current/get-started/create-connection-string"); Environment.Exit(0); } var client = new MongoClient(connectionString); var collection = client.GetDatabase("sample_mflix").GetCollection<BsonDocument>("movies"); var filter = Builders<BsonDocument>.Filter.Eq("title", "Back to the Future"); var document = collection.Find(filter).First(); Console.WriteLine(document.ToJson(new JsonWriterSettings { Indent = true }));
アプリケーションを実行します。
このアプリケーションを起動するには、shell で次のコマンドを実行します。
dotnet run csharp-quickstart.csproj
出力には、検索された映画ドキュメントの詳細が含まれます。
{ _id: ..., plot: 'A young man is accidentally sent 30 years into the past...', genres: [ 'Adventure', 'Comedy', 'Sci-Fi' ], ... title: 'Back to the Future', ... }
Tip
エラーが発生した場合や出力が表示されない場合は、適切な接続文字列が指定され、サンプルデータがロードされていることを確認してください。
これらの手順を完了すると、ドライバーを使用して MongoDB 配置に接続し、サンプル データに対してクエリを実行し、結果を出力する動作するアプリケーションが作成されます。
次のステップ
チュートリアルを完了しました。
このチュートリアルでは、 MongoDB AtlasでホストされているMongoDBデプロイに接続し、クエリに一致するドキュメントを検索するC#アプリケーションを作成しました。
.NET/ C#ドライバーの詳細については、次のリソースを参照してください。
「ドキュメントの挿入」セクションで、ドキュメントを挿入する方法を学びます。
「クエリフィルターの作成」セクションで、ドキュメントを検索する方法について学びます。
ドキュメントを削除する方法については、「ドキュメントの削除」セクションを参照してください。
注意
このチュートリアルで問題が発生した場合は、 MongoDB Stack Overflowページ または MongoDB Reddit Community でサポートを依頼するか、このページの右側または右下にある Rate this pageタブを使用してフィードバックを送信してください。
