在下面的代碼中,我保存了一個新用戶,然後抓取該用戶的ID作爲相關地址記錄中的FK。 PK在數據庫中被定義爲標識列。我的問題,我需要調用dc.SaveChanges();在將人添加到對象集之後?有沒有辦法避免去數據庫獲取ID然後將其作爲FK傳遞給地址?我可以將兩個savechanges()放到一個操作中嗎?我是否需要.SaveChanges()才能獲取外鍵的ID?
PlaygroundEntities dc = new PlaygroundEntities();
Person person = new Person
{
FirstName = txtFirstName.Text,
LastName = txtLastName.Text
};
dc.People.AddObject(person);
dc.SaveChanges();
Address address = new Address
{
PeopleId = person.Id,
Address1 = txtAddress.Text,
City = txtCity.Text,
State = txtState.Text,
ZipCode = txtZipCode.Text
};
dc.Addresses.AddObject(address);
dc.SaveChanges();