解決MVC中Model上的特性在EF框架刷新時清空的問題

MVC中關於前端數據的效驗通常都是經過在Model中相關的類上打上特性來實現。前端

可是在咱們數據庫發生改變,EF框架須要刷新時會把咱們在Model上的特性所有清除,這樣的話,咱們前端的驗證就會失效。數據庫

所以,我以爲可使用Partial-局部類(夥伴類) 的方式來實現EF框架刷新特性不清除的功能。後端

在Model文件夾當中咱們先創建一個類,通常命名爲「你的類名」+Partial,由於若是直接創建同名類會提示已存在,要求覆蓋,或者在別的地方建同名類。(須要在class前面加上Partial 關鍵字)框架

而後,咱們打開類,在內部將類名取爲同名類,爲這個類打上特性-[MetadataType(typeof(X))]  這裏是爲了指定與數據模型類關聯的元數據類. X-須要創建聯繫的類名。spa

創建起須要聯繫的類後,在類當中粘貼上你須要驗證的類當中全部的屬性,在這些屬性上打上特性就至關於在Model類中打上了特性,而且不會由於EF框架刷新而清除能夠防止先後端的驗證代碼失效。class

相關文章
相關標籤/搜索