So fügen Sie data in mehrere Tabellen in ASP ein. NET MVC. Entity Framework

Ich habe zwei Tische tblProduct & tblImages . tblImages haben mehrere imageer für ein Produkt und hat einen Fremdschlüssel im Zusammenhang mit tblProduct . Ich habe ein Problem mit dem Einfügen von data in mehrere Tabellen.

Das ist meine viewscode:

 <!-- Text Boxes and dropdown lists for tblProduct above and below is for adding files to tblImages--> <div class="col-md-10"> <input multiple type="file" id="file" name="file" /> </div> 

und hier ist mein Controller-Code:

 public ActionResult AddProduct_Post([Bind(Include = "productName, productDescription, productPrice, productCategory")]tblProduct tblProduct,List<HttpPostedFileBase> file) { List<tblImage> prodImages = new List<tblImage>(); var path = ""; foreach (var item in file) { if (item != null) { tblImage img = new tblImage(); img.ImageFile = new byte[item.ContentLength]; img.ImageName = string.Format(@"{0}.JPG", Guid.NewGuid()); img.vend_ID = Convert.ToInt32(Session["userID"]); item.InputStream.Read(img.ImageFile, 0, item.ContentLength); path = Path.Combine(server.MapPath("~/Content/img"), img.ImageName); item.SaveAs(path); prodImages.Add(img); } } tblProduct.venodrID = Convert.ToInt32(Session["userID"]); tblProduct.tblImages = prodImages; if (ModelState.IsValid) { db.tblProducts.Add(tblProduct); db.SaveChanges(); int latestProdID = tblProduct.productID; foreach (tblImage tblImg in tblProduct.tblImages) { tblImg.prod_ID = latestProdID; db.Entry(tblImg).State = EntityState.Modified; } db.SaveChanges(); return RedirectToAction("DashBoard"); } ViewBag.productCategory = new SelectList(db.tblCategories, "categoryID", "categoryName"); ViewBag.vendorGender = new SelectList(db.tblGenders, "genderId", "genderName"); return View(); } 

Ich setze einen Breakpoint auf ModelState.IsValid und es geht nicht in die if-Bedingungen und kehrt die gleiche view zurück, ohne die data zu ModelState.IsValid . Bitte sagen Sie mir, wie Sie dieses Problem lösen können

PS: Ich bin neu bei ASP.NET MVC

[Bind(Include =

Sie können den Check-Parameter, den Sie in der Aktionsmethode binden, ähnlich ist, was Sie in der view definiert haben, sonst können Sie das Bindungsattribut entfernen und versuchen, dies wird Ihnen helfen, zu finden, was tatsächlich Fehler ist ..