【发布时间】:2009-10-18 11:59:48
【问题描述】:
我正在为一个简单的钓鱼比赛制作模型,但我的设计存在一些问题。
钓鱼游戏的主要类是 Capture,它看起来像这样:
public class Capture : Entity {
public virtual int Weight { get; set; }
public virtual int Length { get; set; }
public virtual DateTime DateForCapture { get; set; }
public virtual User CapturedBy { get; set; }
public virtual Species Species { get; set; }
}
到目前为止没有问题,但我不确定如何为游戏建模。
- 每个物种都与每年变化的参考重量相关
- 捕获点的数量是其权重除以该物种的当前参考权重。
解决问题的一种方法是将捕获连接到 SpeciesReferenceWeight 而不是 Species
public class SpeciesReferenceWeight : Entity
{
public virtual Species Species { get; set; }
public virtual int ReferenceWeight { get; set; }
public virtual int Year { get; set; }
}
但是通过这种方式,捕获与游戏的实现细节相关联,在我看来,捕获仍然是捕获,即使它不包含在游戏中。
我的目标是:http://hornalen.net/fishbonkern/2007/,这是我几年前用蛮力 sql 写的,没有域模型。
对于这个问题的各种反馈,我很高兴。
【问题讨论】:
标签: c# nhibernate domain-driven-design