我将拥有多个物体的“型号”,我确实不相信,在不为每种类型单独提供储蓄/回收的情况下,如何最好地检索/拯救这些多种类型。
我的班子:
public class Evaluation {
public int Id
public string Comment
}
public class EvaluationType_1 : Evaluation {
public string field
}
public class EvaluationType_1 : Evaluation {
public string field
}
我想在我的存放处做些什么:
public interface IEvaluationRepository {
public Evaluation getEvaluation(int id);
public SaveEvaluation(Evaluation);
}
在“假肢”方法之外:
// Save/get common fields
Id
Comments
// Get child type, perform switch
Type childType = ???
switch(childType) {
// Set child-specific fields
}
我没有增加一个“类型”栏,因为我在数据库的另一部分有这个栏目,我并不真正对它非常感兴趣。
Update
如有必要,更有助于澄清。
我热爱使用接口和通用物的想法,真的是在如何将它们纳入我的储存模式方面损失的。
当我打电话getEvaluation
时,我想回去一份抽象的评价,但我与这一守则作斗争。 Same with Saving。
Update 2
Daniel正在帮助我清醒地了解我试图问什么。
数据库:
Evaluations
Id (PK)
Comment
EvaluationType1
Id (FK to Evaluations.Id)
Field
EvaluationType1
Id (FK to Evaluations.Id)
Field
因此,在<代码>植被评价(int id)中,我需要说明他们想要哪类评价。 这是否意味着我应该通过某种方式? 在<代码>saveEvaluation上是正确的。 但是,我可以做一个开关/运行图,看<代码>。 类型代码>。