【发布时间】:2015-11-20 04:57:06
【问题描述】:
我编写了一个抽象类PaymentMethod 和两个派生类PaymentMethodInvoice 和PaymentMethodBilling。对于他们每个人,我都写了共享EditorTemplates。
GET 工作正常,我选择了我的PaymentMethod 并获得了正确的表单。如果我发布此表单,模型绑定不起作用,它会尝试实例化抽象类PaymentMethod。
我必须覆盖 CreateModel protected override object CreateModel 还是有更好的解决方案来处理这个问题?
【问题讨论】:
-
这里的模型是什么以及您传递给 POST 操作的参数是什么?
-
是的,你需要创建一个自定义
ModelBinder -
@Imad PaymentMethod 是 ContractViewModel 的一个属性
-
@StephenMuecke 谢谢,它有效。我无法将您的评论标记为正确答案。 :-/
标签: c# asp.net asp.net-mvc model-binding defaultmodelbinder