0

データを挿入しようとしています。新しい会社連絡先を持つ新しいブランチを持つ新しい会社を挿入しています。まずはスキーマ。CompanyBranch と CompanyContact の間の多対多の関係に注意してください。私の問題は、CompanyContact の CompanyBranchIDが、割り当てられた CompanyBranchId ではなく常に 0になることです。会社と支店のデータが正しく挿入されます。関係が正しくない可能性はありますか?

ここに画像の説明を入力

 [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"]) });
    }
4

0 に答える 0