回到目錄
有一句話,在10年前就是真理,到現在也一直都是,「前端驗證可以沒有,但後端驗證必須要有」,這句話相信大家都沒有意見吧,前端驗證一般指通過js方式實現的,友好的,個性的驗證方式,而後端驗證是指從表單提交過來,要進行入庫之前的,資料有效性的驗證,它不需要有美麗的外表,它需要有的僅僅是「有效」!
下面我將到mvc環境裡的前端驗證和後端驗證作乙個詳細的說明,乙個使用上的說明。
//建立訂單使用knockoutjs
var createorder = function
() );
self.productname =ko.observable().extend();
self.username =ko.observable().extend();
self.price =ko.observable().extend(
});self.count =ko.observable().extend(,
max:
});self.do = function () ,
success:
function
(data)
else
alert(data.code);}})
} else}}
new createorder());
在這裡多說兩句,資料實體有效性驗證是指和資料表相關的驗證規則,如你的username字段長度為128字元,那麼,你的實體驗證的長度就是128,而viewmodel業務規則驗證是指針對具體業務設計的檢視模型,如使用者註冊模組,在這個模組裡,你的username被產品經理規則為50個字元,那麼,你的這個業務規則驗證的長度就是50,當然,你的其它業務可能也用到了username欄位,而它的業務規則當然可以不同,這就是有效性和業務規則。
下面**是乙個返回json結果的post請求方法,**如下
public jsonresult doorder(int productid, string username, string productname, decimal price, intcount)}};
if (productid <= 0
)
#region 在action裡拼接modelstate錯誤訊息
var errors = new
stringbuilder();
foreach (string key in
viewdata.modelstate.keys)
}#endregion
if (entity.isvalid &&modelstate.isvalid)
orderservice.doorder(entity);
else
return json(new );
return json(new );
}
回到目錄
愛上MVC系列 前端驗證與後端資料有效性驗證
有一句話,在 年前就是真理,到現在也一直都是,前端驗證可以沒有,但後端驗證必須要有 這句話相信大家都沒有意見吧,前端驗證一般指通過 方式實現的,友好的,個性的驗證方式,而後端驗證是指從表單提交過來,要進行入庫之前的,資料有效性的驗證,它不需要有美麗的外表,它需要有的僅僅是 有效 下面我將到 環境裡的...
愛上MVC3系列 全域性異常處理與異常日誌
1 registerglobalfilters globalfilters.filters 它的主要使用是將全域性過濾器進行註冊,而全域性過濾器可以在registerglobalfilters這個方法裡進行設定,如 1 2 全域性過濾器 特性 3 4 5public static void regi...
找到MVC框架中前端URL與後端同步的解決方案
基本思路 先用url標籤生成完整的url字元,前端動態引數的部分以適配符先填充,最後動態引數利用正則匹配進行替換。這種方式,可以在各種mvc框架中適用,妙。不廢話,上碼。url url.format string.format 同時匹配 內容方式 if string.prototype.format...