0

順不同のリストをオブジェクトのリストにバインドしない、厳密に型指定された mvc ページがあります。したがって、mvcビューでは次のようになります

<% foreach (var item in Model.WhatYouDoL) { %>
<li><%: Html.Encode(item.Text) %><input type="hidden" name="WhatYouDoL[0].Reference" /></li>
<% } %>

私のビューモデルは次のようになります

public class ViewModelQuoteWhatYouDoInMotorTrade
    {
        public List<WhatYouDo> WhatYouDoL { get; set; }
    }

私のリストには次のようなオブジェクトが含まれています

public struct WhatYouDo
    {

        public decimal Percent { get; set; }
        public string Reference { get; set; }
        public string Text { get; set; }
    }

これは、WhatYouDoL[0].Reference をインデックス ([0]) で使用する場合、問題なくバインドされます。ロード時にインデックスで設定できます。問題は、クライアント側でこのリストに追加および削除したいことです。したがって、追加のリスト項目を追加して現在の項目を削除するjsがいくつかあるかもしれません。これは、名前のインデックスを何らかの方法で管理し、それらを順番に保ち、クライアント側で重複しないようにする必要があることを意味します。名前にインデックスを使用して回避する方法があるかどうかは誰にもわかりません。

前もって感謝します。

4

1 に答える 1

0

おそらく間違いがあります:

<% foreach (var item in Model.WhatYouDoL) { %>
<li><%: Html.Encode(item.Text) %><input type="hidden" name="WhatYouDoL[0].Reference" /></li>
<% } %>

多分それはあるべきです:

<% foreach (var item in Model.WhatYouDoL) { %>
<li><%: item.Text %><input type="hidden" name="<%: item.Reference %>" /></li>
<% } %>

証明を使用する限り、エンコードする必要はありません<:

于 2010-12-02T18:28:54.283 に答える