2010-11-17 45 views
2

我使用RIA + Silverlight(可能爲最新版本)實體框架。當我插入一行與代碼在RIA中創建新實體時出現異常

var context = new DataService(); 
var script = new Script { Id = Guid.NewGuid(), User = User.Id }; 
context.Scripts.Add(script); 
context.SubmitChanges((o) => 
    {   
     if (!o.HasError) 
     {} // OK, but has never gone here yet 
     else 
     { 
     o.MarkErrorAsHandled(); 
     Messaging.MessageBox("some error" + o.Error.Message); 
     } 
     }, null); 

...它拋出異常


無法將NULL值插入列「ID」,表腳本,列不允許空值。 INSERT失敗。


當我嘗試調試,一切順利(服務),以及實體(腳本)已成立「ID」到一些獨特的價值。它看起來像EntityFramework不會將'Id'發送到數據庫。這是可能的 ? :)

「腳本」實體只有兩列: - Id(Guid),User(int),還沒有任何外鍵。

我想要設置一些東西嗎?謝謝。

回答

4

您最初是否創建了沒有標識規範列的表,然後將PK作爲標識?如果是這樣你需要刷新你的模型。

還要確保[Key]屬性在你的PK上。

2

好的,謝謝你的回答。如果我從數據庫更新我的模型,它可能會工作。但是我做了它 - 從模型創建數據庫。

現在我知道,我必須設置StoredGeneratedPattern身份到**無**

+0

這就是答案。我有同樣的問題。謝謝!! – Houman 2011-03-28 09:08:54

相關問題