2012-02-22 107 views
5

假設我有一個blog,其集合爲posts,並且每個post都有一個集合comments。我想查詢所有評論,以查找所有博客文章中最近的5篇。使用RDBMS,您只需直接進入評論表,按日期排序,然後取5.在Ravendb中是否可以做類似的事情,因爲註釋不是聚合根目錄?查詢Ravendb文檔中的子集合

回答

2

將您的評論存儲爲單獨文檔而非每篇文章都是有意義的,否則每次添加評論時都會加載並保存整個文章文檔。

考慮到這一點,你只會詢問你的意見類似下面

session.Query<Comment>().OrderByDescending(x => x.CommentDate).Take(5) 
+0

我認爲這將是這種情況。我如何將他們鏈接到他們的父職位? - 給他們一個假的外鍵字段,然後根據這個執行另一個查詢? – highace 2012-02-22 23:31:57

+0

不確定我可以添加很多以下文章解釋了創建文檔關係的各種選項,看看這是否有幫助http://daniellang.net/how-to-handle-relations-in-ravendb/ 可能添加一個postId財產的評論和使用包括將是我會去的戰略 – 2012-02-22 23:35:14

+0

神奇,非常感謝。 – highace 2012-02-22 23:39:04