2014-02-20 77 views
0

我是EF新手,我遇到了問題。
這是在我的模型的情況:
父實體:「客戶
兩個孩子的實體:「私人」和「公共
,另一個「地址
創建實體間連接的正確方法

客戶可以有許多ShippingAddresses
私人有一個HomeAddress
公衆ONE LegalAddress

所以,我充滿了協會的形式,以這種方式:
1)客戶端 - >地址
1->許多
[X] []
ShippingAddresses .. ....
[X]添加外鍵

2)公開 - >地址
1 - > 1
[X] []
是homeAddress ......
.........

3)公開 - >地址
1 - > 1
[X] []
LegalAddress .... ..
.........

就是這樣。問題是,當我嘗試添加一個簡單的記錄

Client client = new Private(); 
client.Name = "John"; 
client.HomeAddress = new Address(); 
//filling the address' properties...      
dbContext.Clients.Add(client); 

當我打電話

dbContext.SaveChanges(); 

我得到: 實體在「AccountingModelContainer.Addresses」參加「PublicAddress」的關係。 0相關'公共'被發現。 1'預計公衆。

我在做什麼錯? tnx提前,Giovanni

回答

0

嘗試創建一個公共地址。

client.LegalAddress = new Address(). 
+0

嗨!我創建了一個新的公衆,所以我寫了你告訴我的。結果: 我有驗證錯誤! 「{} System.Data.Entity.Validation.DbEntityValidationResult」 –