我目前希望用户更新数据列表并能够将其提交回来。用户正在更新的数据是类似的数据,目前它是少数几个文本框。他们更新信息并提交回来。
目前我已经创建了以下视图模型
public class Name
{
public int Id { get; set; }
public string FullName { get; set; }
}
这将保存数据。所以从控制器我现在正在嘲笑数据
public ActionResult Index()
{
var listOfNames = new List<Name>();
var name1 = new Name();
name1.Id = 1;
name1.FullName = "Test Name1";
var name2 = new Name();
name2.Id = 2;
name2.FullName = "Test Name2";
var name3 = new Name();
name3.Id = 3;
name3.FullName = "Test Name3";
var name4 = new Name();
name4.Id = 4;
name4.FullName = "Test Name4";
listOfNames.Add(name1);
listOfNames.Add(name2);
listOfNames.Add(name3);
listOfNames.Add(name4);
return View(listOfNames);
}
然后视图如下所示,
@model IEnumerable<MvcApplication1.Models.Name>
@using (Html.BeginForm())
{
foreach (var item in Model)
{
@Html.TextBox("namevalues", item.FullName, new { id = "name" + item.Id, data_id = item.Id})
<br />
}
<input type="submit" />
}
当用户提交数据时,我希望重新填充视图模型,以便我应该能够执行以下操作
[HttpPost]
public ActionResult Index(IEnumerable<Name> names)
{
return View("index", names);
}
我是否需要使用 javascript 将信息实际整理在一起然后传递?还是有一些我不知道的 MVC 魔法?