我最近開始使用MVC,並且我感到有點失望。這個框架不是幫助我,而是阻礙我。如何獲得對模型綁定的控制權?
我試圖寫這樣的(僞代碼)的控制器操作
ActionResult Save(long id, string whichForm)
{
if (whichForm == "A")
{
var vm = CreateModel(Request.Form);
if (!TryValidate(vm))
return View(vm);
else
return RedirectToRoute("Success");
}
else ....
}
基本上我想有,當我的視圖模型,並當它被驗證過的控制。這可能嗎?我如何實現CreateModel方法?考慮我可能想在這個控制器動作中創建幾個不同的視圖模型。
* Rant:我不明白爲什麼視圖模型綁定和驗證在DefaultModelBinder中混合在一起。看起來像代碼味道。特別是當很難覆蓋這種行爲時。
感謝您的downvotes,關心發表評論? :-) – Kugel
+1也許他們不喜歡你的* Rant,但你有權獲得你的意見,而且我沒有看到這個問題沒有錯。如果問題得到了很好的答案,那麼問題就很好。 – AaronLS