我正在使用 NHibernate 为一个非常基本的 ASP.NET MVC 应用程序建模,我似乎被困在我的设计上。这是我的模型的草图:
如您所见,这是非常基本的,但我对此有些担忧。User 根实体和 Organization 根实体通过两个一对多关系访问同一个 Organization_Users 实体子实体。这似乎不对,我认为我正在打破总体界限。这个模型对我来说很臭,但我喜欢这个想法,因为我想要这样的代码:
var user = userRepository.Load(1);
var list = user.Organizations; // All the organizations the user is a part of.
和
var org = orgRepository.Load(1);
var list = org.Users; // All the users in an organization.
组织实体也将使用表中的额外数据,如标记和角色。这是一个糟糕的设计吗?如果您有任何想法,那就太好了。我仍在努力思考 DDD。谢谢