قالب ASP.NET MVC UI: كيفية مزج خاصية نموذج ILIST مع محرر (M => M.SubModel)؟
-
20-09-2019 - |
سؤال
قل لديك هذا:
public class ShoppingCart {
public IList<CartItem> cartItems {get; set; }
}
وأنت تفعل هذا لجعل الفصل:
<%= EditorFor( m => m.ShoppingCart, "ShoppingCart") %>
كيف يمكنك أن تفعل المحرر (؟؟ ، "Cartitem") في التسوق. أعتقد أنه سيبدو مثل هذا:
<% foreach( CartItem myCartItem in m.cartItems) {
%><%= EditorFor( ??, "CartItem")
%><% } %>
الفكرة هنا بالطبع هي استخدام قالب واجهة المستخدم لفئة كاملة ، وليس مجرد خاصية.
المحلول
<% 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"
الذي يربط مرة أخرى إلى نموذج عرض القائمة الأصلي
نصائح أخرى
إذا كان نموذج التسوق الخاص بك هو فئة التسوق ، فيجب أن تكون قادرًا على القيام به
<% foreach (CartItem myCartItem in m.cartItems) { %>
<%= EditorFor(m => myCartItem, "CartItem") %>
<% } %>
لا تنتمي إلى StackOverflow