2012-04-10 117 views
7

我在實體框架得到這個空列錯誤信息4.1 - 當列實際上不是可空:實體框架非空列映射到一個可空實體屬性

Non-nullable column MyView.RunningTotal in table TransactionListView 
is mapped to a nullable entity property. 

但是你可以從看以下截圖顯示該列不可爲空,且實體屬性也不可爲空。那麼爲什麼會發生這種錯誤?

enter image description here

+0

不(None)是否表示可空性的默認值,但不是false?如果你指定True,它會工作嗎?我現在沒有附近的視覺工作室來自己檢查... – ILya 2012-04-10 02:00:14

+1

更改(無)爲False工作,但每次edmx重新生成時都會丟失該更改(使用數據庫中的生成模型) – 2012-04-10 03:06:55

+0

您是否嘗試刪除實體從設計師那裏重新添加呢?我用這種方式解決了類似的問題。 – ctorx 2012-04-10 03:54:50

回答

12

的直線前進的解決方案是手動指定可空參數爲True。

+0

好吧,所以我做了這個開始,我仍然在Visual Studio中出現此錯誤有些事情是錯誤的。 – 2017-02-09 15:25:57

+0

這很奇怪。在屬性窗口中,它表示可以爲「True」,但我只是在文本編輯器中打開了.edmx文件,並將其設置爲false。有沒有搞錯。 – 2017-02-09 15:29:40

0

2017年更新(Visual Studio的2017年)

如果lLya提到接受直接的解決方案對您沒有幫助,那麼這可能。 您可能會注意到,當您保存圖表時,它會執行一些操作,例如根據圖表更改來更改類屬性。人們會認爲發電機本身會意識到這些變化,對吧?!你可能仍然會遇到這個錯誤。

什麼修復它是我重新生成數據庫(右鍵單擊圖 - >從模型重新生成數據庫)。