다수 문서 업데이트
collection 객체에서 UpdateMany()
메서드를 사용하면 문서를 두 개 업데이트할 수 있습니다.
예시
다음 코드는 'Pizza'라는 값을 가진 cuisine
필드가 있는 restaurants
collection의 모든 문서를 업데이트합니다. 업데이트 후 이러한 문서에는 값이 'Pasta and breadsticks'인 cuisine
필드가 생깁니다.
Asynchronous 또는 Synchronous 탭을 선택하여 해당 코드를 확인합니다.
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.
자세한 정보
빌더 사용에 대해 자세히 알아보려면 빌더를 사용한 작업을 참조하세요.