处理RavenDB中的重复

时间:2014-03-12 22:21:48

标签: nosql ravendb

第一次使用RavenDB开发NoSQL开发。

令我困惑的一件事是我们应该如何处理存储的文档中的重复项。

假设我有一个故事(想想BDD / ATDD):

{ 
    Id: 10,
    Title: 'Story 1'
}

然后我决定一个故事可以有一个或多个子故事。然后,我创建了另一个故事,然后将故事作为一个子故事。

{
    Id: 15,
    Title: 'Title',
    Stories: [ { Id: 10, Title: 'Story 1' }]
}

现在我有两个故事。如果我加载ID = 15的故事并继续编辑Stories数组中的第一个故事,那么,使用新标题“Sub-story 1”,原始故事保持不变。

我想要了解的内容:我在乎吗?如果我这样做,确保一切都保持同步的最佳方法是什么?当子故事发生变化时,我希望原始故事也能改变。这种东西的适当设计/解决方案是什么?

1 个答案:

答案 0 :(得分:0)

快速回答是你不应该对这样的事情进行建模。 请参阅:http://ayende.com/blog/156353/entities-associations-point-in-time-vs-current-associations