我是EF4的新手,我試圖從多對多關係中插入一條記錄。我得到3個表:實體框架4 - 插入多對多
- A(ID,說明)
- B(ID,碼)
- AB(AID,BID)< --a和B關係
問題當我調用SaveChanges()時,它會拋出一個異常,它試圖向B中插入一條新記錄。我不希望這樣,它應該只是添加鏈接。這裏是我的代碼:
var a = new A(){Description="Example"};
var b = context.B.Single(B => B.ID == paramID);
a.B.Add(b);
context.A.AddObject(a);
context.SaveChanges() <---- here it throws the exception
從我的研究,上面的代碼應該和一個新的記錄,以A和創建A和B之間的鏈接,並將其存儲在AB表,對不對?
我錯過了什麼?
編輯:
這是我收到的例外:
無法將NULL值插入列 'MIC',表 'dbo.B';列不允許有空值。 INSERT失敗。\ r \ n聲明已終止。
如果你注意到,我只是想添加多對多的鏈接而不是在表B中創建一條新記錄。我甚至試圖讓a.B留空,它仍然拋出上面描述的異常。
異常類型和消息似乎與此問題有關... – driis