【发布时间】:2023-04-05 11:41:01
【问题描述】:
我似乎找不到可靠的答案。我是 Ravendb 的新手,因此我们将不胜感激任何帮助。我正在寻找建立一个递归菜单。最好的方法是什么?我查看了此提要RavenDb - Recursive queries/indexes, for Hierarchical Document,但找不到“推荐”解决方案。我是否只是将所有子文档作为非规范化数据存储在父文档中?我正在考虑存储文档/页面的 id 和文档/页面的“slug”。这似乎是可行的,因为这是我在构建菜单时需要的所有信息,但是如果页面标题发生变化会发生什么?然后我需要更改页面的 slug,这意味着我必须更新页面父级。如果页面被删除会怎样?我只是应用补丁吗?此方法与使用实时投影有何不同?如果有人使用 Ravendb 构建了一个模仿“最佳实践”的分层树应用程序,我将永远感激不尽。
谢谢
泰隆
【问题讨论】:
-
Tyrone,没有单一的“正确”和“最佳”解决方案可以做到这一点。有很多方法,例如将所有数据存储在单个文档中(取决于您将拥有的页数),使用类似于 Raven 的 Authorization Bundle 的方法来处理层次结构等。您能进一步解释一下您的内容吗?正在努力实现?
-
嗨 Carlos,我只是想构建一个分层菜单,想知道什么是“最佳”或正确的方法?
标签: c# asp.net-mvc-3 nosql ravendb