获取MVC IEnumerable EditorFor的迭代器

时间:2012-10-26 19:28:15

标签: asp.net-mvc-3 checkbox

我正在使用MVC来显示复选框选项表。我知道我可以在一组对象上调用EditorFor(),它将通过循环遍历集合并根据每个项目的编辑器模板输出HTML来生成它们的列表。我的问题是,是否有一种方法可以在编辑器模板中访问此循环的迭代器,这样我就可以每隔3列开始一个表的新行?

3 个答案:

答案 0 :(得分:1)

此外,为项目命名正确的项目绑定非常重要。看到这篇文章:

http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

答案 1 :(得分:0)

按照以下帖子中的Brad Wilson链接,应该是你所追求的。

How to create custom editor/display templates in ASP.NET MVC 3?

答案 2 :(得分:0)

最简单的你可以使用:

  List<string> items = new List<string>();
  items.Add("Item 1");
  items.Add("Item 2");
  items.Add("Item 3");

  var result = items.Select((item, index) => new { index, item });

然后if(index % 3 == 0) { ... }

OR

In ASP.NET MVC, is there a way to get the loop index when using EditorTemplates?