我有一個使用asp.net mvc創建的留言簿表單。 必須通過從下拉控件中選擇一個值來填寫有效的gender
表單字段。下拉控制有三個選項,即「 - 選擇 - 」,「女性」,「男性」以及默認選擇「 - 選擇 - 」。數據模型已設置爲強制訪問者選擇女性或男性,但不是「 - 選擇 - 」。Can DataAnnotation是否可以阻止用戶發佈數據庫中不存在的表單域?
我們知道訪問者有機會調節表單數據,因此他可以提交gender
表單字段,指向數據庫中不存在的值。
我的問題是:
- 能DataAnnotation防止用戶發佈中不存在數據庫表單域?
- 對付這種嘗試的首選方法是什麼?在調用
SaveChanges()
之前,我必須先檢查提交的性別表單字段嗎?
這是「便宜」?根據數據庫中的查找表驗證發佈的性別,然後在驗證失敗或讓數據庫拋出異常時手動拋出異常? – xport 2011-02-15 09:01:38