我有一個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,支付金額等等),但隨之而來的是付款方式查看模型
感謝
更新 - 我也注意到在提交的形式任一個,即父視圖模型的數據似乎並沒有與它一起發佈。不知道爲什麼這樣。