Overview
ビルダは .NET/C# ドライバーによって提供されるクラスで、クエリやアップデートなどの一般的な操作を構築するのに役立ちます。
ビルダの詳細については、.NET/C# ドライバーのドキュメントの「 ビルダを使用した操作」を参照してください。
MongoDB Query API への変換
C# Analyzerを使用して、ビルダー式をMongoDB Query APIに変換します。 次のタブをクリックすると、ビルダー式とそれに対応する MongoDB Query API の変換の例が表示されます。
var filter = Builders<Book>.Filter.Eq(b => b.Genre, genre) & Builders<Book>.Filter.Gte(b => b.Price, minPrice) & Builders<Book>.Filter.Regex(b => b.Title, titleSearchTerm);
{ "$and": [ { "Genre": genre }, { "Price": { "$gte": minPrice } }, { "Title": /titleSearchTerm/ } ] }
注意
変数名
C# Analyzer によって生成された MongoDB Query API の翻訳には、.NET/C# ドライバー コードの変数名が含まれています。 .NET/C# ドライバーは、アプリケーションが MongoDB と通信するときに、これらの変数名を対応する値に置き換えます。
Visual Studio でのビルダの分析
Visual Studio でビルダー式を分析するには、次のアクションを実行します。
インストールガイドに記載されている C# Analyzer をインストールします。
.NET/C# ドライバーを使用してビルダ式を記述します
ビルダー式の最初のメソッドの下の ...アノテーションにカーソルを合わせて、MongoDB Query API の翻訳を含む情報メッセージを表示します。
単純なビルダ式
対応する次のタブをクリックすると、情報メッセージが表示されるかどうかにかかわらずビルダ式が表示されます。
追跡ビルダ変数
C# Analyzer は、ビルダ変数の追跡と構成をサポートしています。論理演算子を使用して複数のビルダ式を組み合わせ、情報メッセージでMongoDB Query API の翻訳を表示できます。
次の対応するタブをクリックすると、情報メッセージが表示されるかどうかにかかわらず、構成されたビルダ変数が表示されます。
Fluent API
C# Analyzer は、.NET/C# ドライバーのビルダ クラスを使用して Fluent API をサポートします。 連鎖ビルダ メソッドのシーケンスを作成し、情報メッセージで MongoDB Query API の翻訳を表示できます。
次の対応するタブをクリックすると、情報メッセージの表示の有無にかかわらず、連鎖ビルダ メソッドを使用する操作が表示されます。
Tip
エラー リスト パネル
Visual Studio for Windowsを使用している場合は、 エラー リストウィンドウでC# Analyzer からの出力を表示できます。
詳細については、 Microsoftの「 エラー リスト ウィンドウ 」を参照してください。
サポートされていないビルダ式
ビルダー式がサポートされていない場合、 C# Analyzer は MABuilders2001
警告を出力します。
次のコード スニペットには、サポートされていない Length
プロパティにアクセスするビルダ式が含まれています。
var filter = Builders<Movie>.Filter.Gt(m => m.Reviews.Length, 2);
C# Analyzer はサポートされていない式に注釈を表示し、次の警告メッセージを生成します。
Expression not supported: ArrayLength(m.Reviews).
次のスクリーンショットは、注釈付きのコードと、注釈にカーソルを合わせると表示される警告を示しています。

Tip
エラー リスト パネル
Visual Studio for Windowsを使用している場合は、 エラー リストウィンドウでC# Analyzer からの出力を表示できます。
詳細については、 Microsoftの「 エラー リスト ウィンドウ 」を参照してください。
サポートされていないビルダ式の例をさらに見るには、 MongoDB C# Analyzer Githubリポジトリを参照してください。