Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework 实体框架5多对多插入未按预期工作_Entity Framework_Entity Framework 5 - Fatal编程技术网

Entity framework 实体框架5多对多插入未按预期工作

Entity framework 实体框架5多对多插入未按预期工作,entity-framework,entity-framework-5,Entity Framework,Entity Framework 5,我正在尝试插入数据。我正在插入一家新公司,该公司有一个新的分支机构,该分支机构有一个新的公司联系人。首先是图式。请注意CompanyBranch和CompanyContact之间的多对多关系。我的问题是CompanyContact中的CompanyBranchID总是以0而不是指定的CompanyBranchID结束。已正确插入公司和分支机构数据。可能是关系不正确吗 [HttpPost] public ActionResult CreateCompany(FormCollection

我正在尝试插入数据。我正在插入一家新公司,该公司有一个新的分支机构,该分支机构有一个新的公司联系人。首先是图式。请注意CompanyBranch和CompanyContact之间的多对多关系。我的问题是CompanyContact中的CompanyBranchID总是以0而不是指定的CompanyBranchID结束。已正确插入公司和分支机构数据。可能是关系不正确吗

 [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。