2013-05-09 43 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

相關問題