【问题标题】:Adding an array element to all documents in a collection将数组元素添加到集合中的所有文档
【发布时间】:2014-07-11 14:13:56
【问题描述】:

我的Foo 文档有一个CustomData 集合,用于添加用户可配置的属性。

有时,当我创建这些属性时,我需要为它们添加默认值以进行索引。

这就是我试图为此目的使用的东西:

DatabaseCommands.UpdateByIndex(
    "dynamic/Foos",
    new IndexQuery(),
    new[]
    {
        new PatchRequest
        {
            Name = "CustomData",
            Type = PatchCommandType.Add,
            Value = RavenJObject.FromObject(new
                                            {
                                                Value = false,
                                                Bar = new { Baz = "Qux"}
                                            })
        }
    });

这会生成以下 HTTP 请求:

PATCH /databases/MyDb/bulk_docs/dynamic/Foos?&pageSize=128&allowStale=False
[
  {
    "Type": "Add",
    "Value": {
      "Value": false,
      "Bar": {
        "Baz": "Qux"
      }
    },
    "Name": "CustomData"
  }
]

这会返回200 OK,但没有修改任何文档。

【问题讨论】:

    标签: ravendb set-based http-patch


    【解决方案1】:

    看起来问题出在动态索引的使用上。

    切换到持久索引解决了这个问题。

    【讨论】:

      猜你喜欢
      • 2012-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多