Entity framework 实体框架5多对多插入未按预期工作
我正在尝试插入数据。我正在插入一家新公司,该公司有一个新的分支机构,该分支机构有一个新的公司联系人。首先是图式。请注意CompanyBranch和CompanyContact之间的多对多关系。我的问题是CompanyContact中的CompanyBranchID总是以0而不是指定的CompanyBranchID结束。已正确插入公司和分支机构数据。可能是关系不正确吗Entity framework 实体框架5多对多插入未按预期工作,entity-framework,entity-framework-5,Entity Framework,Entity Framework 5,我正在尝试插入数据。我正在插入一家新公司,该公司有一个新的分支机构,该分支机构有一个新的公司联系人。首先是图式。请注意CompanyBranch和CompanyContact之间的多对多关系。我的问题是CompanyContact中的CompanyBranchID总是以0而不是指定的CompanyBranchID结束。已正确插入公司和分支机构数据。可能是关系不正确吗 [HttpPost] public ActionResult CreateCompany(FormCollection
[HttpPost]
public ActionResult CreateCompany(FormCollection formData)
{
CompanyContact contact = new CompanyContact()
{
ContactName = formData["ContactName"],
eMail = formData["Email"],
LandLine = formData["LandLine"],
Mobile = formData["Mobile"],
Role = formData["Role"]
};
CompanyBranch branch = new CompanyBranch()
{
BranchAddress1 = formData["BranchAddress1"],
BranchAddress2 = formData["BranchAddress2"],
BranchAddress3 = formData["BranchAddress3"],
BranchAddress4 = formData["BranchAddress4"],
BranchAddress5 = formData["BranchAddress5"]
};
branch.CompanyContacts.Add(contact);
Company newCompany = new Company()
{
Name = formData["CompanyName"]
};
newCompany.Branches.Add(branch);
newCompany.Branches[0].Company = null;
newCompany.Branches[0].Students = null;
db.Entry(newCompany).State = EntityState.Added;
db.SaveChanges();
return RedirectToAction("Edit", "Student", new { id = int.Parse(formData["StudentId"]) });
}
CompanyBranch.CompanyBranchID
是数据库中的IDENTITY
字段吗?如果查看架构图,可以看到所有主键。是的。我可以看到它们是主键,但它们是数据库中的标识字段吗?是的,对于CodeFirst,主键的默认生成类型是标识类型。因此,它在哪里“总是以0结尾”。如果是标识字段,则不能为0。