在一对多关系中创建新记录时,我正在努力使用实体框架。我定义了以下表格:
人
PersonInternetAddresses
InternetAddresses
实体框架创建了具有名为 PersonInternetAddresses 的导航属性的 EntityObjects Person 和具有指向人员的导航属性的 InternetAddresses。
为了创建一个新的 InternetAddresses 记录,我创建了一个带有几个文本字段和 InternetAddresses 的绑定源的表单。
在我的“新建”按钮下,我放置了以下代码:
internetAddressesBindingSource.AddNew();
(internetAddressesBindingSource.Current as InternetAddresses).Id = Guid.NewGuid();
(internetAddressesBindingSource.Current as InternetAddresses).Persons = InternetAddresses.Persons;
在最后一行我收到以下错误:
EntityCollection 已经初始化。InitializeRelatedCollection 方法只能在对象图的反序列化过程中被调用来初始化一个新的 EntityCollection。
我猜我无法通过 InternetAddresses 的导航属性设置人员,这意味着实体框架本身会创建一个 PersonInternetAddresses 记录。由于模型中没有 PersonsInternetAddresses EntityObject 我很卡住!