当在一对多关系中创建新记录时,我正在与实体框架苦苦挣扎。我下面的表中定义:Winforms中的实体绑定 - 一对多
Person
PersonInternetAddresses
InternetAddresses
实体框架创造了EntityObjects人用导航属性命名PersonInternetAddresses和InternetAddresses与导航属性的人。
要创建我创建了一个形式与一对夫妇的文本字段和BindingSource的InternetAddresses新InternetAddresses纪录。
在我的“新建”按钮我已经放在下面的代码:
internetAddressesBindingSource.AddNew();
(internetAddressesBindingSource.Current as InternetAddresses).Id = Guid.NewGuid();
(internetAddressesBindingSource.Current as InternetAddresses).Persons = InternetAddresses.Persons;
在最后一行,我发现了以下错误:
The EntityCollection has already been initialized. The InitializeRelatedCollection method should only be called to initialize a new EntityCollection during deserialization of an object graph.
我猜我无法通过InternetAddresses的导航属性来设置此人,这意味着实体框架本身会创建PersonInternetAddresses记录。由于模型中没有PersonsInternetAddresses EntityObject,所以我很困难!