Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.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#从多个自定义复选框组获取控制器的值_C#_Asp.net Mvc - Fatal编程技术网

C#从多个自定义复选框组获取控制器的值

C#从多个自定义复选框组获取控制器的值,c#,asp.net-mvc,C#,Asp.net Mvc,在我的网站上有一些复选框属于2组 我想获得选中的复选框 这是我的控制器 [HttpGet] public ActionResult HireItem() { var HireItemListModel = new HireItemModel(); HireItemListModel = new HireItemModel() { first_name = Se

在我的网站上有一些复选框属于2组

我想获得选中的复选框

这是我的控制器

[HttpGet]
        public ActionResult HireItem()
        {
            var HireItemListModel = new HireItemModel();

            HireItemListModel = new HireItemModel()
            {
                first_name = Session["first_name"].ToString(),
                middle_name = Session["middle_name"].ToString(),
                last_name = Session["last_name"].ToString(),
                ceremony_date = Session["ceremony_date"].ToString(),
            };       

            var product = _productService.GetAllHireProducts();

            if (product.Count != 0)
            {
                foreach (var proValue in product)
                {
                    var productVarSeparateList = _productService.GetHireProductVariantsByProductIds(proValue.Id, false);

                    foreach (var HireProSep in productVarSeparateList)
                    {
                        var productVarSeparateModel = new HireItemModel.HireItemSeparatetModel()
                        {
                            pname = HireProSep.Name,
                            price =HireProSep.Price,
                            pId=HireProSep.Id,
                        };
                        HireItemListModel.HireItemSeparatetlist.Add(productVarSeparateModel);
                    }
                    var productVarSetList = _productService.GetHireProductVariantsByProductIds(proValue.Id, true);

                    foreach (var HireProset in productVarSetList)
                    {
                        var productVarListset = new HireItemModel.HireItemSetModel()
                        {
                            pname = HireProset.Name,
                            price = HireProset.Price,
                            pId = HireProset.Id,
                        };
                        HireItemListModel.HireItemSetList.Add(productVarListset);
                    }
                }
            }

            return View(HireItemListModel);

        }

        [HttpPost,ActionName("HireItem")]
        public ActionResult HireItem(string submitB)
        {

            var checkbox=Request.Form["HItemType"];
            if (checkbox != "false")
            {
                var HireItemArray = Request.Form["chk_group"];
//This is the problem...


                return RedirectToRoute("ShoppingCart");
            }
            else
            {
                return RedirectToRoute("hire");

            }
}
这是我的第一个局部观点

<table  >

 @foreach (var item in Model)
{
    var val = item.pId;
     <tr>
     <td>
<input type="checkbox" name="chk_groupSet" value="@val" />
</td>
        <td>
  @Html.DisplayFor(modelItem => item.pname)
   </td>
       <td>
  @Html.DisplayFor(modelItem => item.price)
   </td>
        <td>
  @Html.DisplayFor(modelItem => item.pId)
   </td>
   </tr>
}
</table>

@foreach(模型中的var项目)
{
var val=item.pId;
@DisplayFor(modelItem=>item.pname)
@DisplayFor(modelItem=>item.price)
@DisplayFor(modelItem=>item.pId)
}
这是我的另一部分观点

<table  >

 @foreach (var item in Model)
{
    var val = item.pId;


     <tr>
     <td> 
     <input type="checkbox" name="chk_group" value="@val" />


    @* @Html.CheckBox("separateHireItem",""+item.pId )*@
     @*<input type="checkbox" name="sItem" value="sItem"  />*@</td>
        <td>
  @Html.DisplayFor(modelItem => item.pname)
   </td>
        <td>
  @Html.DisplayFor(modelItem => item.price)
   </td>
        <td>
  @Html.DisplayFor(modelItem => item.pId)
   </td>
   </tr>
}

</table>

@foreach(模型中的var项目)
{
var val=item.pId;
@*@Html.CheckBox(“separateHireItem”,“item.pId”)*@
@**@
@DisplayFor(modelItem=>item.pname)
@DisplayFor(modelItem=>item.price)
@DisplayFor(modelItem=>item.pId)
}
我的问题是我得到了流动的产出


我想获取选中复选框的值

在我看来,这篇文章返回了一个HItemType数组。我建议您在HireItem操作中使用FormCollection作为参数,这对于查看
HireItemListModel
的结构也很有用。出于兴趣,
\u productService.GetAllHireProducts()
为什么不将租用项目列表完全水合以发送到视图,而不是在控制器操作中加载额外的数据?