ドキュメントの置き換え
このバージョンのドキュメントはアーカイブされており、サポートされなくなりました。 .NET/ C#ドライバー のバージョンをアップグレードする 方法については、 の現在のドキュメント を表示します。
あるドキュメントを別のドキュメントで置き換えるには、コレクション オブジェクトで ReplaceOne()
同期メソッドまたはReplaceOneAsync()
非同期メソッドを使用します。
例
次のコードは、 cuisine
フィールドの値が「Pizza」である、 restaurants
コレクション内の最初のドキュメントを置き換えます。 置き換え後、このドキュメントには「 mongoのピザ」の値と、address
フィールドと borough
フィールドの新しい値を持つ name
フィールドが含まれます。
AsynchronousSynchronous対応するコードを表示するには、 タブまたは タブを選択します。
var filter = Builders<Restaurant>.Filter .Eq(r => r.Cuisine, "Pizza"); // Find ID of first pizza restaurant var oldPizzaRestaurant = _restaurantsCollection.Find(filter).First(); var oldId = oldPizzaRestaurant.Id; Restaurant newPizzaRestaurant = new() { Id = oldId, Name = "Mongo's Pizza", Cuisine = "Pizza", Address = new() { Street = "Pizza St", ZipCode = "10003" }, Borough = "Manhattan", }; return await _restaurantsCollection.ReplaceOneAsync(filter, newPizzaRestaurant);
ReplaceOneAsync()
操作の完全に実行可能な例については、 ReplaceOneAsync コード サンプルを参照してください。
var filter = Builders<Restaurant>.Filter .Eq(r => r.Cuisine, "Pizza"); // Find ID of first pizza restaurant var oldPizzaRestaurant = _restaurantsCollection.Find(filter).First(); var oldId = oldPizzaRestaurant.Id; Restaurant newPizzaRestaurant = new() { Id = oldId, Name = "Mongo's Pizza", Cuisine = "Pizza", Address = new() { Street = "Pizza St", ZipCode = "10003" }, Borough = "Manhattan", }; return _restaurantsCollection.ReplaceOne(filter, newPizzaRestaurant);
ReplaceOne()
操作の完全に実行可能な例については、 ReplaceOne コード サンプルを参照してください。
期待される結果
前述の例のいずれかを実行すると、次の結果が出力されます。
First pizza restaurant before replacement: J&V Famous Pizza Restaurants modified by replacement: 1 First pizza restaurant after replacement: Mongo's Pizza Resetting sample data...done.
詳細情報
ドキュメントの置き換えの詳細については、 置換操作のガイドを参照してください。
ビルダの使用の詳細については、「 ビルダを使用した操作 」を参照してください。