Entity Framework是一個C# ORM框架,可以很便捷的開辟Web程序,當然也可以在WInform程序中挪用,可是EF呈現異常的時辰,經常會提醒一個或多個實體驗證掉敗。此時我們調試的時辰可能發現問題比力堅苦。本文本家兒要給大師介紹下若何去定位問題然后解決問題。
起首,這是我在程序調試時,呈現的一個問題,如下所示。程序拋出異常 有一個或者多個實體驗證掉敗。此時異常跑出來之后,一般我們會點擊異常,然后查看具體信息,成果就發現屬性那么多,到底看哪個呢?咱們接著往下看。
點開異常信息,查看EntityvalidationErrors選項,如下所示。我們看到Count=2 ,申明有兩處異常信息。也就是說我們的程序報錯,有兩處處所驗證沒經由過程。
然后點開EntityvalidationErrors選項卡,會發現一個列表,0和1就是我們程序報錯的處所。這里,我們一一申明。后面的申明文字代表我們的Entity有異常,也就是說異常信息呈現在實體驗證上面。
我們點開0,然后可以看到以下選項卡。這選項卡這里有個ValidationError選項,這個會提醒那個實體信息犯錯了,Entity選項會顯示出,當前錯誤實體的數據信息,本家兒要包羅哪個字段的值是什么。
點擊開ValidationError,其錯誤信息顯示如下。此中是NumberCode字段錯誤,錯誤信息是“字段信息必需是最大值為3的字符或者數組”申明字段的值跨越了和數據庫中的設置的最大的長度。
最后我們查看下數據庫,如下所示,數據內外面設置的最大長度是3,是以可以鑒定是數據庫設置字符長度不敷,若是是代碼邏輯沒問題,那么我們點竄下數據表,若是是代碼邏輯有問題,那么我們就在代碼中加驗證。
0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!