MVC中,關于往背景送出的方法有:
1、Html.BeginForm():同步
2、Ajax.BeginForm():異步
3、js或jQuery送出背景
本文體驗Ajax.BeginForm()方法。
View model
讓model實作了IValidatableObject,在model層自定義驗證邏輯和錯誤資訊。
HomeController
無論驗證成功或失敗,都傳回強類型部分視圖。
Home/Index.cshtml視圖
Home/FormContent.cshtml部分視圖
Home/Success.cshmtl視圖
沒有填寫效果:

年齡小于18效果:
輸入正确效果:
==總結
使用Ajax.BeginForm()雖然可以實作異步送出并驗證,但,如果放到背景管理系統的背景下,傳回部分視圖可能不是很友善。