我想通过单个提交将数据插入几张表中。 问题是2表应该是几个项目(烹饪步骤,食谱配料) 这2个表中的项目#是未知的,所以我会使用相同的ajax或任何脚本库。但问题是,在插入到数据库(db.add & db.save)各 他的2个表都一对多的关系(一个配方很多... ...)。如何在包含数组的多提交表单中插入项目
[HttpPost]
public ActionResult Create(Recipe recipe, Category category, Ingredient ingredient , intrusion [] intrusion)
{
int UserNumber = (int)Membership.GetUser().ProviderUserKey;
recipe.UserId = UserNumber;
recipe.AddedDate = DateTime.Now;
//intrusion intrusion [] =new List<intrusion> ;
//var entity=new intrusion();
//TryUpdateModel(entity ,new[] {"intrusion.IntrusionStep","intrusionId"});
if (ModelState.IsValid)
{
// var results = db.intrusion.Add(entity);
db.category.Add(category);
db.recipe.Add(recipe);
db.ingerdient.Add(ingredient);
db.intrusion.Add(intrusion);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(recipe);
}
我不明白...因为你可以使用一个foreach来运行实体数组,并添加上下文和db.SaveChanges只是在完成 – MayogaX 2013-02-28 11:22:17
因为它是现在我有这个Erorr味精。'System.Data.Entity.DbSetXXX.Models.intrusion> .AddXXX.Models.intrusion'的最佳重载方法匹配')有一些无效参数 – Danny 2013-02-28 11:56:27