zoukankan      html  css  js  c++  java
  • ASP.NET MVC 表单提交多层子级实体集合数据到控制器中

    ASP.NET MVC 表单提交多层子级实体集合数据到控制器中

    导航属性 类型设置为ICollection 时

     public virtual ICollection<DepartmentDetail> DepartmentDetails { get; set; }

      @for (var i = 0; i < Model.DepartmentDetails.Count(); i++)
                        {
     
                    <div class="form-group">
                        @Html.HiddenFor(model => model.DepartmentDetails.ToList()[i].Id)
                        @Html.HiddenFor(model => model.DepartmentDetails.ToList()[i].DepartmentId)
                        @Html.LabelFor(model => model.DepartmentDetails.ToList()[i].Population, htmlAttributes: new { @class = "control-label col-xs-2" })
                        <div class="col-xs-4">
                            @Html.EditorExtFor(model => model.DepartmentDetails.ToList()[i].Population, new { htmlAttributes = new { @class = "form-control" } })
                        </div>
                        @Html.LabelFor(model => model.DepartmentDetails.ToList()[i].BuildingsCount, htmlAttributes: new { @class = "control-label col-xs-2" })
                        <div class="col-xs-4">
                            @Html.EditorExtFor(model => model.DepartmentDetails.ToList()[i].BuildingsCount, new { htmlAttributes = new { @class = "form-control" } })
                        </div>
                    </div>
    }

    后台将取不到

    导航属性类型应设为IList

     <div class="form-group">
                                @Html.HiddenFor(model => model.DepartmentDetails[i].Id)
                                @Html.HiddenFor(model => model.DepartmentDetails[i].DepartmentId)
                                @Html.LabelFor(model => model.DepartmentDetails[i].Population, htmlAttributes: new { @class = "control-label col-xs-2" })
                                <div class="col-xs-4">
                                    @Html.EditorFor(model => model.DepartmentDetails[i].Population, new { htmlAttributes = new { @class = "form-control" } })
                                </div>
                                @Html.LabelFor(model => model.DepartmentDetails[i].BuildingsCount, htmlAttributes: new { @class = "control-label col-xs-2" })
                                <div class="col-xs-4">
                                    @Html.EditorFor(model => model.DepartmentDetails[i].BuildingsCount, new { htmlAttributes = new { @class = "form-control" } })
                                </div>
                            </div>
  • 相关阅读:
    服务器切换
    闭包函数
    函数对象+嵌套
    lvs讲解
    了解python
    rang enumerate
    set-集合功能介绍
    元组-tuple功能介绍
    dict-字典功能介绍
    list-列表功能介绍
  • 原文地址:https://www.cnblogs.com/cxxtreasure/p/13401577.html
Copyright © 2011-2022 走看看