Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# HTM BeginCollectionItem只返回集合的第一项_C#_Asp.net_Asp.net Mvc 5_Begincollectionitem - Fatal编程技术网

C# HTM BeginCollectionItem只返回集合的第一项

C# HTM BeginCollectionItem只返回集合的第一项,c#,asp.net,asp.net-mvc-5,begincollectionitem,C#,Asp.net,Asp.net Mvc 5,Begincollectionitem,我有以下问题: “礼物”集合作为参数传递给视图。 此集合中的每个项目都是模型类“Gift”中的一个对象。 该类中只有两个属性:name和price。 为了简单起见,我将类放在控制器中 这是行动方法: // GET: Order/CreateGift [HttpGet] public ActionResult CreateGift() { var initialData = new[] { new Gift{ Name

我有以下问题:

“礼物”集合作为参数传递给视图。 此集合中的每个项目都是模型类“Gift”中的一个对象。 该类中只有两个属性:name和price。 为了简单起见,我将类放在控制器中

这是行动方法:

// GET: Order/CreateGift
    [HttpGet]
    public ActionResult CreateGift()
    {
        var initialData = new[]
        {
            new Gift{ Name = "Tricycle", Price = 69.95 },
            new Gift{ Name = "PS4 game", Price = 29.99 },
            new Gift{ Name = "Lazergun", Price = 49.99}
        };

        return View(initialData);
    }
在视图上,由于BeginCollectionItem Html帮助程序,我可以动态地向集合添加新项

我的看法是:

@model IEnumerable
$(文档).ready(函数(){
$(“#添加项”)。单击(函数(){
$.ajax({
url:this.href,
cache:false,
成功:函数(html){$(“#editorRows”).append(html);}
});
返回false;
});
}); // end document.ready函数
礼品清单
你生日想要什么?
@使用(Html.BeginForm())
{
@foreach(模型中的var项目)
{
Html.RenderPartial(“GiftEditorRow”,item);
}
@ActionLink(“添加另一个…”,“BlankEditorRow”,null,new{id=“addItem”})
@*
*@
}
我发现了我的错误。 部分视图“GiftEditorRow”仍然包含以下内容:

@using (Html.BeginForm()){.....}
如果你删除这个,它应该会工作

这是我现在的部分观点:

@using (Html.BeginCollectionItem("gifts"))
{
    <label>Name: </label>
    @Html.TextBoxFor(Model => Model.Name);
    <label>Price: </label>
    @Html.TextBoxFor(Model => Model.Price, new { size = 4 });
    <br />
}
@使用(Html.BeginCollectionItem(“礼物”))
{
姓名:
@TextBoxFor(Model=>Model.Name);
价格:
@TextBoxFor(Model=>Model.Price,新的{size=4});

}
现在我得到了所有的东西,而不是第一个