c#mongodbドライバ(バージョン2.3)では、既存のbsonドキュメントをmodifyにするのは非常に簡単です。しかし、C++ドライバ(バージョンv3)は、既存のドキュメントまたは新しいドキュメントのビルダーの読み取り専用ビューしか提供していないようです。私は、C++ドライバのいくつかの機能を見落としてしまったのですか?あるいは、C++ドライバが本当に変更機能を逃しているのですか?あるいは、C#ドライバは、元のドキュメントを内部的にコピーして新しいドキュメントに変更を加えただけです。mongodbのc#とC++ドライバでbsonドキュメントを変更する
0
A
答えて
0
C++ドライバは、マップやその他の読み取り/書き込みデータ構造としてではなく、効率的にバイト配列としてBSONドキュメントをモデル化します。 C#RawBsonDocumentクラスは、最も近いクラスです。
C++で拡張、変更、および展開する必要がある場合は、ユーザーが行う必要があります。たとえば、ドキュメントを表すクラス/構造体、およびbsoncxx::document::view
を取り、目的の構造体フィールドを移入するコンストラクタを定義します。その後、クラス/構造体のメンバーを歩き回り、それらをビルダークラスの1つを介して新しいドキュメントに追加し、それを返すメソッドを作成します。
関連する問題
- 1. MongoDB Scalaドライバ - BSONドキュメントのレンダリング
- 2. MongoDB用C#ドライバのBSONシリアル化
- 3. MongoDBでC#ドライバ2.4.4でネストされたドキュメントを2回更新する3.4.6
- 4. mongodb C#ドライバでemdededドキュメントを実行する方法
- 5. MongoDBのC#のドライバとISODate
- 6. Mongodb C++ドライバとGridFSのサポート
- 7. MongoDb cドライバを使用してbsonから配列を抽出する
- 8. C#MongoDBドライバOutOfMemoryException
- 9. MongoDB C#ドライバ - 多くのドキュメントを更新する際のパフォーマンスの問題
- 10. mongoDB C++ 11ドライバがドキュメントのIDを取得する
- 11. C#ドライバを使用してMongoDB Arrayの子ドキュメントを更新する方法
- 12. C#のMongoDBのドライバ
- 13. MongoDb C#ドライバのサポートサイクリックリファレンス?
- 14. MongoDB C#ドライバ2.0 InsertManyAsyncとBulkWriteAsync
- 15. mongodb C#ドライバの更新複数のフィールド
- 16. MongoDB Cドライバ:ドキュメントを置き換える方法
- 17. WindowsでMongoDB Cドライバを構築する
- 18. MongoDBのC#のドキュメント
- 19. C#のMongoDBのドライバはカーソル
- 20. 公式C#MongoDBのドライバ
- 21. Mongodb C++ドライバの問題
- 22. C&BSONでMongo Cursorの文書を数えます。 BSONとC.と
- 23. MongoDB C++ドライバでDBClientBaseクラスを使用してドキュメントを挿入する方法は?
- 24. 既存のドキュメントを更新するC#Mongo dbドライバ
- 25. MongoDB C#ドライバとスレッドの安全性
- 26. MongoDB:どのCドライバですか?
- 27. DBSetコレクションをbsonドキュメントとしてMongodbに挿入する
- 28. mongodb C#ドライバSelectMany linqオペレータ
- 29. C#ドライバを使用してMongoDBで複数のドキュメントを更新およびアップする方法
- 30. ドキュメントC#のMongoDB自動インクリメントキー