1

あなたがこれを持っているとしましょう:

public class ShoppingCart {
    public IList<CartItem> cartItems {get; set; }
}

そして、これを実行してクラスをレンダリングします。

<%= EditorFor( m => m.ShoppingCart, "ShoppingCart") %>

ShoppingCart.ascx で EditorFor( ??, "CartItem") をどのように実行しますか? 私はそれが次のようになると思います:

<% foreach( CartItem myCartItem in m.cartItems) { 
     %><%= EditorFor( ??, "CartItem")
%><% } %>

もちろん、ここでの考え方は、プロパティだけでなく、クラス全体に UI テンプレートを使用することです。

4

2 に答える 2

1
<% for (int count = 0; count < Model.cartItems.Count; count++ )
   {                                              %><%= 
      Html.EditorFor(m => m.cartItems[count])      %><%
   } 
%>

次のようなフォーム名を作成します。

name="cartItems[0].Name"
name="cartItems[1].Name"
name="cartItems[2].Name"

元のリストビューモデルにバインドします

于 2010-02-23T16:19:29.963 に答える
1

ShoppingCart.ascxのモデルがShoppingCartクラスである場合は、次のことができるはずです。

<% foreach (CartItem myCartItem in m.cartItems) { %>
    <%= EditorFor(m => myCartItem, "CartItem") %>
<% } %>
于 2010-01-15T08:19:53.053 に答える