0

ビュー内で、List の partialview を呼び出します。その部分的なビューでは、そのリストを 2 つの IEnumerables に分割し、リストごとに ModelType の EditorTemplate を呼び出します。

私のパーシャルビュー:

@model List<ModelType>

@using System.Collections;         

@{
    int countModelTypeLeft = (Model.Count % 2 != 0) ? Model.Count + 1 : Model.Count ;
    int countModelTypeRight = Model.Count;

    IEnumerable<ModelType> modelTypeListLeft = Model.Take(countModelTypeLeft);
    IEnumerable<ModelType> modelTypeListRight = Model.Range(countModelTypeLeft , countModelTypeRight );
}
    <div class="modeltype-left" style="float: left; width: 50%;">
        // How can I call EditorFor for modelTypeListLeft  now?
    </div>

    <div class="modeltype-right" style="float: right; width: 50%;">
        // How can I call EditorFor for modelTypeListRight  now?
    </div>

ご覧のとおり、2 つのリスト modelTypeListLeft と countModelTypeRight が部分ビューの特定のモデルの一部ではないため、EditorFor を呼び出すことができないため、スタックしています。この問題を解決するには?

4

1 に答える 1

2

ModelType のエディター テンプレートがある場合、これは引き続き機能し、正しいエディター テンプレートを使用します。

<div class="modeltype-left" style="float: left; width: 50%;">        
    @foreach(var leftItem in modelTypeListLeft )
    {
        Html.EditorFor(m=>leftItem)
    }
</div>

<div class="modeltype-right" style="float: right; width: 50%;">        
    @foreach(var rightItem in modelTypeListRight)
    {
        Html.EditorFor(m=>rightItem)
    }
</div>
于 2012-03-07T08:21:48.147 に答える