1
附带RavenDB具有Albums
文档集合,每个有Genre
嵌入文件中,就像这样的示例数据库:RavenDB:当嵌入式与如何以不同的序列化类的文档
{
... other stuff...
"Genre": {
"Id": "genres/1",
"Name": "Rock"
},
... other stuff...
}
公告在这里Genre
有Id
和Name
字段。
但是当你看Genre
文件,他们有Id
,Name
和Description
领域,如:
{
"Description": "Rock and Roll is a form of rock music developed in the 1950s and 1960s. Rock music combines many kinds of music from the United States, such as country music, folk music, church music, work songs, blues and jazz.",
"Name": "Rock"
}
我怎样才能在代码模型,这样,当我Store()
然后SaveChanges()
的Genre
会在保存自己的文档时与保存Album
文档和嵌入Genre
时序列化和保存不同(如示例数据)?
嗯,理解,可以工作。但这似乎有点跛脚。在模型中,我希望能够将专辑的流派设置为实际的流派类型(将流派实例用于存储为文档并嵌入到专辑中)。任何方式来做到这一点? – TravisK
没有。它不这样工作。风格和专辑是唯一的文件。它们是DDD术语的“聚合体”。参考类本身不是一个聚合或文档。您可以将GenreRef和ArtistRef作为单独的类,但它们都是“相册”文档的一部分。为了清楚起见,有些人把它们作为嵌套类放在聚合中,所以它们不会在外部干扰。 –
我更新了示例代码,以显示嵌套类和单独的引用类,如我所述。此外,现在将Ids正确显示为字符串。 Int ID可以工作,但不是Raven的常态。 –