我有一個SalesOrder表和ID和OrderID列。 ID是一個自動生成的int。 OrderID是一個最大長度爲20的非空字符串,我們用它來存儲客戶的訂單號以供參考。無法將NULL插入實體框架中的非標識列。有趣的事情......它不是空的?
加入我的新SalesOrder和調用的SaveChanges後,我得到以下錯誤:
無法將NULL值插入列「訂單ID」,表「SalesOrder」;列不允許有空值。 INSERT失敗。 該聲明已被終止。
問題是,我保存對象實際上確實有訂單ID!它幾乎就像在保存所有值之前先試圖保存實體一樣。這是EF如何處理事情?
我的設置是EF4.1,使用EDMX模型優先方法。 StoreGeneratedPattern設置爲None。默認值目前設置爲(無),但我嘗試過各種值。實體密鑰是假的,因爲它不是密鑰的一部分。我也嘗試刪除SalesOrder實體並從數據庫中重新生成它。
你可以提供代碼,你做插入? 'SaveChanges()'之前? – Paul