我有一种情况,我有两种客户。人员和组织。 Person具有该组织不需要的一些属性(例如:名字,姓氏等)。然后有一些Person不需要的组织属性(例如:公司名称等)。但是在软件领域,Person和Company都是客户。什么是可扩展的方式来创建这个NHibernate域模型
问题:将所有属性转储到一个名为Customer的域对象并使用像IsOrganization这样的bool来区分person和org是否更好? 或 拥有包含Person和Organization属性的Person域类,Organization域类和Customer域类会更好吗?
我觉得后者是要走的路,但我愿意接受创意。 客户 - 人际关系为0到n,其中n = 1 客户 - 组织关系也是0到n,其中n = 1
如果有帮助,我使用的是NHibernate和FluentNHibernate。采取代码第一的方法。
因此,如果我有每个人和组织的表..我不会在应用程序内使用ID(自动增量)作为客户号码。对? – Perpetualcoder 2012-03-12 22:27:26