我创建了一些代表我的消息逻辑的类:
MessageBoxBase - 所有3种消息框的基类
MessageInbox - 代表收件箱
最后在我的agregate root用户有MessageboxCollection,我可以使用它有点像:
myUser.MessageBoxes.Inbox.Add(...)
myUser.MessageBoxes.Outbox.Items....
我现在没有任何数据库结构,而且我对消化很开放,但我在想这样的事情:
我敢肯定的是,我不想为每个用户创建每个收件箱/发件箱的数据库行,就像它在CustomBox案例中一样(对于每个用户的收件箱和发件箱,类似于不必要的字典)。
在这一点上我有一个问题 - 如何映射? :)
有什么建议吗?也许我的域名很糟糕?我在等你的回复:))
答案 0 :(得分:0)
有一个更简单的解决方案,即您只有两个名为消息和框的数据库表。
消息 - (Id,IsRead,主题,消息,发件人,UserId,BoxId)
方框 - (Id,Name,UserId)
此解决方案现在允许用户拥有多个自定义框,并且应该始终为他创建默认框。对象模型可以是用户有一个Box列表,每个框都有一个消息列表。