多くのドキュメントの更新
コレクション オブジェクトで UpdateMany()
メソッドを使用して複数のドキュメントを更新できます。
例
次のコードは、 cuisine
フィールドの値が「Pizza」である、 restaurants
コレクション内のすべてのドキュメントを更新します。 更新後、これらのドキュメントには「Pasta and cake」の値を持つcuisine
フィールドが含まれます。
AsynchronousSynchronous対応するコードを表示するには、 タブまたは タブを選択します。
const string oldValue = "Pizza"; const string newValue = "Pasta and breadsticks"; // Creates a filter for all documents with a "cuisine" value of "Pizza" var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, oldValue); // Creates instructions to update the "cuisine" field of documents that // match the filter var update = Builders<Restaurant>.Update .Set(restaurant => restaurant.Cuisine, newValue); // Updates all documents that have a "cuisine" value of "Pizza" return await _restaurantsCollection.UpdateManyAsync(filter, update);
UpdateManyAsync()
操作の完全に実行可能な例については、 UpdateManyAsync コードサンプルを参照してください。
const string oldValue = "Pizza"; const string newValue = "Pasta and breadsticks"; // Creates a filter for all documents with a "cuisine" value of "Pizza" var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, oldValue); // Creates instructions to update the "cuisine" field of documents that // match the filter var update = Builders<Restaurant>.Update .Set(restaurant => restaurant.Cuisine, newValue); // Updates all documents that have a "cuisine" value of "Pizza" return _restaurantsCollection.UpdateMany(filter, update);
UpdateMany()
操作の完全に実行可能な例については、 UpdateMany コード サンプル を参照してください。
期待される結果
前述の例のいずれかを実行すると、次の結果が出力されます。
Restaurants with cuisine "Pizza" found: 1163 Restaurants modified by update: 1163 Restaurants with cuisine "Pasta and breadsticks" found after update: 1163 Resetting sample data...done.
詳細情報
ビルダの使用の詳細については、「 ビルダを使用した操作 」を参照してください。