關於在ASP.NET MVC 中使用EF的Code First的方式來讀取數據庫時的Validation failed for one or more entities. See 'EntityVal

      今天在作一個小網站的時候遇到不少問題唉,我仍是個菜鳥,懂的也很少,今天一個表單的提交按鈕用不了,都弄了幾個小時唉。不過最後仍是搞定了,還有瀏覽器有開發人員選項,否則我都不知道我還要繼續排查多久哦,今天晚上在把數據存入數據庫的又出現了問題。我使用的是Entity Framework的Code First模式來訪問數據庫的。對於數據的驗證我在數據模型上加了數據註解。固然在前臺也引入了一些JS這樣就能夠再不把數據提交到服務器時完成驗證功能。在後臺保存用戶提交的數據的時候,咱們要用到ModelStatus.IsValid這個屬性。就是判斷下模型狀態是否有效。若是用戶所填寫的數據都知足數據模型的數據註解中的條件,則ModelStatus.IsValid=true;反之ModelStatus.IsValid=false,當這個ModelStatus.IsValid=true的時候,也就是數據合法,咱們就把數據保存到數據庫。可是今天我在保存保存數據的時候就遇到了異常。以下圖。數據庫

       可是我卻找不到錯誤在那裏。這句話說的是一個或者多個實體驗證失敗,詳見實體驗證錯誤屬性。但是這個實體驗證錯誤如何去找呢。其實咱們能夠用C#中的tr和Catch來捕獲這個異常,咱們就知道具體是錯在那裏了。以下圖。
由於VS2015很智能哈。咱們把鼠標移動上就能夠看見其中的值了。以下圖。
 
咱們按着提示就能夠找到這個錯誤吧。
由於我仍是個菜鳥哈。因此有不對的地方請各位大神指出哈
相關文章
相關標籤/搜索