2013-05-09 42 views
2

我的方案: 我有几千个我想更改的文档(更名为&添加属性),我已经写了一个PatchRequest来更改文档,但是这需要一个文档ID。在RavenDB中,我可以检索文档类型的所有文档ID

我正在寻找一种方式来获得特定类型的所有文档的文档ID的列表,任何想法?

如果可能的话,我想,以避免从服务器检索文档。

回答

2

我已经写了一个PatchRequest来更改文档,但是这需要一个文档ID。

否,.Patch获取文档ID,而不是PatchRequest。

既然要更新的文档的整个大片,你会想用.UpdateByIndex方法:

documentStore.DatabaseCommands.UpdateByIndex("IndexName", 
     new IndexQuery {Query = "Title:RavenDB"}, 
     new [] 
     { 
     new PatchRequest 
     { 
      Type = PatchCommandType.Add, 
      Name = "Comments", 
      Value = "New automatic comment we added programmatically" 
     } 
     }, allowStale: false); 

这将让你修补匹配索引的所有文档。该索引可以是任何你喜欢的。

欲了解更多信息,请参阅乌鸦文档Set-Based Operations

+1

不能谢谢你,这正是我所需要的。 – 2013-05-09 19:22:50

相关问题