在NerdDinner示例中,編寫了一組業務規則以驗證模型上的數據。通過調用modelObject.GetRuleViolations()檢查像空字符串這樣的東西,你可以得到它們全部。但還有另一層驗證是數據庫。例如,datetime字段留給數據庫驗證,數據庫只接受可以轉換成DateTime對象的字符串。如何在ASP.NET MVC的規則違規中獲得數據庫驗證?
我看到的問題是,modelObject.GetRuleViolations()永遠不會返回datetime的違規。因此,即使正確阻止保存記錄,並且顯示錶單並指定有錯誤並突出顯示日期時間字段,也沒有具體的錯誤消息。有沒有辦法在業務規則驗證錯誤中獲取數據庫驗證錯誤?
一般而言,我會非常小心地將異常狀態消息盲目地放入頁面供最終用戶查看,因爲您可能會不經意地提供有關數據庫形狀的非常敏感的信息。 – 2009-05-19 15:28:53