我想用实体框架插入同名的多个输入。我试过了,但不管用
模型
public class Skill
{
[Key]
public int skill_id { get; set; }
public string skill_name { get; set; }
}视图
@model WebApplication1.Models.Skill
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<input type="text" name="skill_name[0]" id="skill_name[0]" />
<input type="text" name="skill_name[1]" id="skill_name[1]" />
<input type="submit" value="Submit" />
}控制器
ProductContext db = new ProductContext();
[HttpPost]
public ActionResult Save(IList<Skill> skills)
{
foreach (var item in skills)
{
db.Skills.Add(skills);
db.SaveChanges();
}
return RedirectToAction("index");
}dbContext
public class ProductContext : DbContext
{
public DbSet<Skill> Skills { get; set; }
}我该怎么做?我找到了这个https://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx/,但本教程没有提供用于插入的控制器示例
发布于 2017-11-25 15:07:05
变化
public string skill_name { get; set; }
至
public string[] skill_name { get; set; }
然后更改Save操作方法,如下所示
[HttpPost]
public ActionResult Save(Skill skills)
{
foreach (var skillName in skills.skill_name)
{
Skill skill = new Skill();
skill.skill_name = skillName;
db.Skills.Add(skill);
db.SaveChanges();
}
return RedirectToAction("index");
}https://stackoverflow.com/questions/47482639
复制相似问题