将单独的行从TextAreaFor发布到单独的DB行中

时间:2013-11-05 16:18:43

标签: c# asp.net-mvc razor

如何将Razor中的TextAreaFor(或其他形式的HTML输入)中的每一行都用作Create方法(或如何修改该方法)作为单独的值并插入到DB中的单独行中。

控制器:

[HttpPost]
public ActionResult Create(Names name)
{
    unitofwork.Names.Insert(name);
    unitofwork.save();

    return RedirectToAction("Index");
}

查看

@Html.TextAreaFor(model => model.name)

Names模型

[Key]
public int NameID { get; set; }
[Required]
public string Opinion { get; set; }

[Required]
public int ID { get; set; }
public virtual NickName NickName { get; set; }

1 个答案:

答案 0 :(得分:2)

尝试这样的事情:

[HttpPost]
public ActionResult Create(Names name)
{
    var names = name.Split(new[] { '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries)
    foreach(var n in names) 
    {
        unitofwork.Names.Insert(n);
    }

    unitofwork.save();

    return RedirectToAction("Index");
}