我正在尝试迁移现有的Web应用程序以使用RavenDB.
我目前在我的Web应用程序中有页面,它允许您根据查询字符串中的id来查看类别,子类别和资源.
然而,我注意到RavenDB生成聚合根的id,但不为子实体生成.
我不认为子类别是一个聚合根(一个类别具有子类别),因此我将其作为我的类别文档的子文档.
我是错误的,使它成为一个子文档,因为我直接访问它的id通过在querystring?但是如果没有,那么如何访问各个子类别,因为RavenDB似乎没有为不是聚合根的实体生成ids?
有关这个确切情况的Raven邮件列表中有一个
long but interesting discussion.
原文链接:https://www.f2er.com/nosql/203331.html简单的回答是,Raven不是设计为这样做,只有根实体获得一个id,所有其他的都被视为一个值类型.但是您可以自己实现,请参阅线程末尾的代码示例.