Asp.net-Mvc
使用 Angular VS Razor 進行 ASP.Net MVC 驗證
ASP.Net MVC 與模型中的自定義屬性和 Razor 一起,讓您只需編寫一個 HTML 幫助程序,如 @Html.ValidationMessageFor(model => model.MyAttribute) 來驗證每個欄位。
AngularJS 打算在客戶端呈現所有內容,因此我們無法訪問 Razor 和所有免費生成的 javascript 驗證器。我們必須手動重新編寫所有程式碼,並且我們無法保證此驗證與 Razor 中的伺服器端驗證同步。
我們將如何克服這一差距?
這解決了我的問題:
https://github.com/alisabzevari/ngval
如果我們想更深入(我現在不需要),我們可以這樣做:
我認為這是 Angular 初學者會提出的問題(這就是我發現它的方式:)),這就是我最終的想法:
要驗證的模型欄位從角度視圖 -> 到角度控制器 -> 到角度服務 -> 到 asp.webapi 方法或 asp.mvc 控制器操作,最終映射到 -> 到 mvc 模型
這意味著在所有這些(至少 4 個“投影儀”)上,您必須確保傳輸您將使用 razor 引用的確切模型和欄位。
所以我的意思是,有很多事情會破壞你的一致性。
放棄剃須刀進行驗證。
為客戶端手動重寫它們更易於維護(可讀),並使用自動化測試來確保一致性。