2

ASP.NET MVCで、EditorTemplatesを使用するときにループインデックスを取得する方法はありますか?以前は、モデル内の要素のインデックスを知る必要がある場合、ベースビューのforループを優先してEditorTemplatesを使用するのをやめました。EditorTemplatesを使用しながら、要素のインデックスを取得する方法があるかどうか疑問に思っています。

私のforループの例:

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

contentIndex段落IDにを使用する方法を参照してください。forループの代わりにEditorTemplateを使用してそれを実行できるようにしたいと思います。これは可能ですか?

4

2 に答える 2

2

PhilHaackが素敵なブログ投稿を書きました。

http://haacked.com/archive/2011/04/14/a-better-razor-foreach-loop.aspx

于 2011-12-29T15:30:00.717 に答える
0

これは私にとってはうまくいきました、かみそりの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/

于 2015-02-23T13:44:56.193 に答える