【发布时间】:2011-09-21 23:04:34
【问题描述】:
考虑以下内容。
型号
public class DemographicsModel
{
public List<QuestionModel> Questions { get; set; }
}
//Does not work at all if this class is abstract.
public /*abstract*/ class QuestionModel
{
//...
}
public class ChooseOneQuestionModel : QuestionModel
{
//...
}
public class ChooseManyQuestionModel : QuestionModel
{
//...
}
public class RichTextQuestionModel : QuestionModel
{
//...
}
public class TextQuestionModel : QuestionModel
{
//...
}
控制器
[HttpPost]
public ActionResult Demographics(DemographicsModel model)
{
//...
}
我的观点是DemographicsModel,上面显示了所有不同类型的大量问题。在表单完成并将POST返回服务器后,Demographics model 的Questions 属性将重新填充正确数量的问题,但它们都是QuestionModel 类型而不是具体类型。
如何让这个东西明白要实例化什么类型?
【问题讨论】:
标签: asp.net-mvc-3 inheritance model abstract-class