我有一个ViewModel,其中包含付款金额等内容。 用户有能力通过卡或银行账户支付。Viewmodel有2个viewmodel,只有一个需要
我在付款视图模型中都具有viewmodels。
我想知道如何才能在提交表单时“验证”一种付款类型viewmodel(卡或银行)。
我有一个jQuery手风琴的事情,他们可以选择卡支付或银行支付,并在选择后,div展开,并输入相应的信息。
每个支付类型的div有Html.BeginForm然后职位,以正确的行动,即:
<div>
@using (Html.BeginForm("SubmitCardPayment", "Account"))
{
// submit button here
}
</div>
<div>
@using (Html.BeginForm("SubmitBankPayment", "Account"))
{
// submit button here
}
</div>
我做的卡和银行支付视图模型做视图模型实现IValidatableObject那里有一些验证。但是我想知道如何才能在此处验证其中一种付款视图模型,以及是否存在明显显示该错误的错误,但要确保其他付款视图模型不受影响,或者在未输入详细信息时阻止提交它,因为两个付款视图模型都有必需的属性。
目前发生的情况是,当提交时,我会传递整个视图模型(因为父视图模型包含诸如产品ID,支付金额等等),但随之而来的是付款方式查看模型
感谢
更新 - 我也注意到在提交的形式任一个,即父视图模型的数据似乎并没有与它一起发布。不知道为什么这样。