在ASP.NET MVC中,有没有办法在使用EditorTemplates时获取循环索引?

时间:2011-12-29 15:27:24

标签: asp.net-mvc razor mvc-editor-templates

在ASP.NET MVC中,有没有办法在使用EditorTemplates时获取循环索引?在过去,当我需要知道模型中元素的索引时,我放弃了使用EditorTemplates而支持基本视图中的for循环。我想知道是否有办法在仍然使用EditorTemplates时获取元素的索引。

我的for循环示例:

        @{int contentIndex = 0;}
        @foreach (var item in Model.Content)
        {
            <p id="content@(contentIndex)">
                @Html.TextArea("Content["+contentIndex+"]", item)
            </p>
            contentIndex++;
        }

了解我如何使用contentIndex作为段落ID?我希望能够使用EditorTemplate而不是for循环来做到这一点。这可能吗?

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

这对我有用,从Getting index value on razor foreach

获得
//this gets you both the item (myItem.value) and its index (myItem.i)
@foreach (var myItem in Model.Members.Select((value,i) => new {i, value}))
{
    <li>The index is @myItem.i and a value is @myItem.value.Name</li>
}

此博客帖子http://jimfrenette.com/2012/11/razor-foreach-loop-with-index/

上的详细信息