asp.net - MVC 模型绑定到嵌套集合

2023-11-30

我有一堂课:

public class ClientInformation{
    public string UserName {get; set;}
    public ICollection<RegionDistrictCity> RegionDistrictCity
    {
        get;
        set;
    }

  public class RegionDistrictCity
  {
     public string Region { get; set; }
     public string District { get; set; }
     public string City { get; set; }
  }
}

应该如何格式化 html 中属性 Region、District、City 的输入元素的 name 属性,以便使模型绑定器填充集合“ICollection Region District City”?

我尝试使用一个带有“ClientInformation”类型参数和格式类似于“[index].PropertyName”的 html 名称属性的操作方法,但在这种情况下,仅绑定属性“UserName”。

我尝试使用参数名称为“client”的操作方法,并将 html 名称属性格式化为“client[index].PropertyName”,但它不起作用。 (在这种情况下,如果我有一个“列表客户端”,那么它将被填充)

Thanks.


在 MVC4 中你应该使用for 循环而不是 foreach绑定您的收藏。然后,当您提交数据时,模型绑定器将能够填充您的模型。

@for (int i = 0; i < Model.RegionDistrictCity.Count; i++)
        {
            @Html.EditorFor(model => Model.RegionDistrictCity[i].Region)
        }

但这仅在您不动态删除或添加项目到集合时才有效。 如果您想这样做,您应该使用 steve sanderson 创建的 BeginCollectionItem 帮助器。http://blog.stevensanderson.com/2010/01/28/editing-a-variable-length-list-aspnet-mvc-2-style/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

asp.net - MVC 模型绑定到嵌套集合 的相关文章

  • Microsoft ASP.NET Web Pages 2 Data Nuget 包的用途是什么?

    据我了解 ASP NET MVC 4 项目所需的最低 Nuget 包是 微软 ASP NET MVC 4 微软 ASP NET 剃刀 2 微软 ASP NET 网页 2 微软网络基础设施 不过我很想知道 以下包会添加到项目中什么 Micro
  • 从 MVC 控制器返回 JSON 字符串

    我使用以下代码将对象发送 接收到我的 mvc 控制器 ajax url createOrUpdateTimeRecord data JSON stringify data type POST dataType json contentTyp
  • 我的 POST 编辑操作是否会覆盖 EF 中的所有字段?

    假设我有一个包含 7 个字段的数据库记录 我只想编辑字段 1 的内容 所以我点击了 GET EDIT 操作 它使用我的视图模型呈现强类型视图 然后我继续更新字段 1 但是 我的POST 操作包含所有字段的 映射 如下所示 实体框架也是如此
  • 在 Visual Studio 中将域名从 localhost 更改为自定义名称

    我是 MVC 新手 我刚刚在 VS 2010 中创建了一个 MVC4 测试项目 它运行正常 但 url 是http 本地主机 60826 http localhost 60826 我想把它改成http my test site http m
  • MVC4优化如何允许部分视图脚本?

    部分视图和 MVC 的一个问题是 如果您的可重用部分视图需要某些 JavaScript 则无法包含它并将其加载到页面底部的脚本部分 除了性能问题之外 这意味着像 jquery 这样必要的东西还不存在 你必须使用任何依赖 jquery 的代码
  • 字段“日期”必须是日期 MVC 4

    当我使用 jQuery 日期选择器时 我遇到了这个错误 jQuery datepicker datepicker defaultDate 7 autoSize true dateFormat dd mm yy Model DisplayNa
  • 如何将除 Web API 之外的所有内容路由到 /index.html

    我一直在研究一个AngularJS项目 在 ASP NET MVC 内部使用 Web API 除非您尝试直接访问有角度的路由 URL 或刷新页面 否则它效果很好 我认为这将是我可以处理的事情 而不是胡闹服务器配置MVC的路由引擎 当前的We
  • MVC4:以电子邮件作为参数的 url 路由

    我有这个 url 在我的 VS Web 服务器上运行得非常好 http localhost 4454 cms account edituser email protected cdn cgi l email protection works
  • Web API 和 ASP MVC 之间的主要区别是什么

    标题确实总结了我的问题 我已经使用了这两种技术 但我不确定其中一种技术与另一种技术有何显着不同 在本质上 在设计一个宁静的 Web 应用程序时 选择 ASP MVC 或 Web API 时应考虑哪些标准和 或指南 Purpose ASP N
  • MVC4 捆绑:由于 css3 功能而缩小失败?

    我想使用 MVC4 捆绑和缩小 但我总是在未缩小的 css 文件中收到此错误消息作为注释 Minification failed Returning unminified contents 534 29 run time error CSS
  • asp.net MVC4 中的条件验证

    我希望能够根据从哪个控制器调用视图来启动一些验证函数 我将在 ViewState 或其他内容中设置一个变量 这将帮助我知道从哪个控制器调用该视图 换句话说 如果设置了某个变量 我希望需要验证 这是当我将 Jquery 放入代码中时我在 MV
  • 如何绕过 ASP.NET Web API 中发现多个操作的异常

    当试图找到以下问题的解决方案时 默认操作的 MVC Web Api 路由不起作用 https stackoverflow com questions 11724749 mvc web api route with default actio
  • 从 WEB API 控制器的异步方法中返回 Void

    我从这个博客获得的 ASP NET MVC 4 WEB API 控制器中有这个异步方法 http www strathweb com 2012 04 html5 drag and drop asynchronous multi file u
  • 当checked属性为false时,单选按钮默认被选中?

    我正在尝试生成单选按钮 有条件地检查检查的属性 如果该值存在于数据库中 则应选择它 否则检查的属性为 false 所以最初数据库中没有行 所有单选按钮的检查属性也为 false 但仍然在 UI 上选择 请参见下图 所以不知道这是默认行为还是
  • ASP.NET MVC4 与 Twitter Bootstrap 捆绑

    我正在尝试将 MVC 4 中的新捆绑功能与 Twitter bootstrap 结合使用 在我看来 css 中的字形 png 文件的路径在某种程度上被搞乱了 这是我的代码 bundles Add new StyleBundle bundle
  • 从 ApiController 中的 json 序列化中排除属性

    我试图在 Web ApiControllers 中排除属性被序列化为 JSON 我已经验证了以下 2 个场景的工作原理 我已在我希望排除的属性中包含以下属性 System Web Script Serialization ScriptIgn
  • Web Api FromBody 在 Web 客户端中为空

    您好 我想通过 Web api 控制器中的 body 变量始终为 null 从 C 客户端调用 Web Api 方法 怎样设置才正确呢 客户端 IFileService imgService new ImageServiceBll var
  • 在 Asp.net MVC4 中访问 ViewBag 时出现 NullReferenceException

    我正在尝试访问ViewBag我认为的数据如下 span class small ViewBag BreadCrumb span 我正在发送那个ViewBag来自代码的数据 例如 ViewBag BreadCrumb topic Catego
  • 如何在MVC中获取控制器中的下拉值

    我使用递归函数使用字符串列表绑定下拉列表我的下拉菜单具有类似的值 家 首页 gt gt 厨房 首页 gt gt 厨房 gt gt ABC 我想在数据库中使用相同的下拉值 ABC 这是我的查看代码 ViewBag Title Createne
  • 将视频上传/保存到数据库或文件系统

    我以前从未尝试过保存视频 所以我对此了解不多 我知道如果视频很小 我可以转换为字节数组并保存到数据库 但是为了提高效率 我想了解如何将任何上传的视频保存到我的服务器文件中 然后只保存该文件的文件路径我的数据库表中的视频 我完全不知道如何开始

随机推荐