【发布时间】:2010-01-25 17:50:29
【问题描述】:
我有一个实体,相当于一个任务,可以有多个状态。 “任务”可以处于挂起、通过或失败状态。这些状态中的每一个也将具有一些独特的数据。例如,在失败状态下,实体应该有失败的原因,在待定状态下,它应该有评估的最后期限等。
虽然上述内容让我认为我应该有一个单独的对象来表示每个状态,但实体的底层 ID 应该保持不变,这促使我重新将其视为单个对象。
此外,从一个状态转换到另一个状态需要一些逻辑。转换到“已通过”状态的“待处理”任务将与进行相同转换的“失败”任务区别对待。
如果每个状态的表示完全相同,我将只使用原始属性并完成它。然而,由于不同的状态有略微不同的表示,我一直在努力找出最好的建模方法。管理内部状态的逻辑有点混乱,所以我想我会退后一步重新考虑。有什么想法吗?
虽然我认为这种语言不可知,但我正在使用 c#。
【问题讨论】:
标签: modeling domain-model