我是MVC / Razor / Web的新手,我希望最终能够编辑项目列表,现在我只是尝试使用Html.BeginCollectionItem显示这些项目并且它不起作用(没有错误,只是不显示我的项目。)我在下面列出了我的代码:
型号:
namespace EditList
{
public class GiftModel
{
public string Name { get; set; }
public double Price { get; set; }
}
}
控制器:
namespace EditList
{
public class GiftController : Controller
{
public ActionResult Index()
{
GiftModel[] initalData = new[]
{
new GiftModel{Name = "Tall Hat", Price = 39.95},
new GiftModel{Name = "Long Cloak", Price = 120.00}
};
return View(initalData);
}
}
}
主要观点:
@{
Layout = null;
}
@model IEnumerable<GiftModel>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title></title>
</head>
<body>
<h2>Gift List</h2>
What do you want for your birthday?
@using(Html.BeginForm())
{
<div id="EditorRows">
@foreach (var item in Model)
{
Html.RenderPartial("GiftEditorRow", item);
}
</div>
<input type="submit" value="Finished"/>
}
</body>
</html>
部分视图:
@model GiftModel
<div class="editorRow">
@using(Html.BeginCollectionItem("gifts"))
{
<div>HELLO</div>
Html.DisplayFor(m => m.Name);
Html.TextBoxFor(m => m.Name);
//Html.TextBoxFor(m => m.Price, new { size = 4 });
}
</div>
有一点需要注意的是我已经进入了我的主视图,并且&#34; items&#34;中有数据,但是局部视图不显示文本框等...我是网络代码的新手,所以我&#39 ;我希望我错过了一些简单的东西(我看了很多教程,也许我只是忽略了一些东西)
如果我能提供任何其他信息,请告诉我。