MongoDB C# ドライバーを使用していくつかの更新ステートメントを作成しています。C# APIBuilder
には、名前空間にラップされたメソッドと「ラップされていない」メソッドの両方が含まれています。
表面的には、これらはジェネリックとBSONラッパーを使用する必要がないという点で異なっているように見えます。ただし、どちらのメソッド タイプでも、非 Bson-Wrapped パラメータを渡すことができます。2つの間に機能的な違いはありますか?
たとえば (ドライバ v1.2 を使用)、次の 2 つの用途がありUpdate.Set
ます。
var myCollection = database.GetCollection<MyObject>(typeof(MyObject).Name);
myCollection.Update(
Query.EQ( "_id", myId ),
Update.Set( "Message", "My message text"));
// And now the same call with "Wrapped" method
myCollection.Update(
Query.EQ( "_id", myId ),
Update.SetWrapped( "Message", "My message text"));
これら2つの呼び出しの違いは何ですか? シンタックス シュガーのみの場合 - なぜラップ バージョンが必要なのですか?