【问题标题】:Change BSON field value (C++)更改 BSON 字段值 (C++)
【发布时间】:2011-07-24 03:26:37
【问题描述】:

我正在将 BSON 测试为有线协议,并且我需要能够更改已经创建的 BSONObj 上的一些值...问题是除了从从头开始!

有什么建议吗?

【问题讨论】:

    标签: c++ bson


    【解决方案1】:

    正如所说,没有办法改变现有的 BSONObj。但是有一种解决方法可以做到这一点,而无需“从头开始”重新创建它。假设你有一个 BSONObj mybson。并且您想更改字段“somefield”。

    mybson = mybson.removeField("somefield");
    mybson = BSONObjBuilder().appendElements(mybson).append("somefield", newvalue).obj();
    

    【讨论】:

      【解决方案2】:

      我收到了来自 10gen 的 Dwight Merriman 的回复:

      一般来说它们是不可变的—— 常见的用法是 从 cpp 序列化/反序列化 您选择的对象。另请参阅 和 $inc 但它们是服务器端的。

      所以...我们有它:)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-09-19
        • 1970-01-01
        • 2015-10-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多