【发布时间】:2014-10-06 04:21:19
【问题描述】:
在使用实体框架(v6.1)时,我想知道何时在父/子实体之间设置外键关系。
假设我有一个代表宠物 Owner 的 Owner 实体。我还有一个 Pet 实体,它代表拥有 Owner 的宠物。创建新所有者时,我想创建一个或多个所有者实体拥有的宠物实体。
Owner newOwner = New Owner();
newOwner.LastName = "John";
newOwner.FirstName = "Doe";
Pet newPet1 = new Pet();
newPet1.Type = "Cat":
newPet1.Name = "Whiskers";
Pet newPet2 = new Pet();
newPet2 .Type = "Dog":
newPet2 .Name = "Fido";
// Add pets to Owner
newOwner.Add(newPet1);
newOwner.Add(newPet2);
// Add Owner to collection
Owners.Add(newOwner);
- 是否会自动为 Pet 实体填充外键(OwnerId)?假设 Owner 实体在实体模型中有一个主键,而 Pet 实体有 OwnerId 作为外键。
- 如何取回为每个实体生成的主键?
- 是否仅在调用 .SaveChanges() 后生成密钥?
【问题讨论】:
标签: foreign-keys entity-framework-6