Я не могу вспомнить, где я читал это, но это относится к вам:
- Но разве нам не понадобится хотя бы управление повторителем в MVC?
- У нас есть повторитель контроля. Это называется для каждого цикла
Допустим, у вашей модели представления есть свойство с именем Data
типа IEnumerable<SuperDuper>
. Чтобы перебрать его, вы просто должны сделать
<% foreach (var sd in Model.Data) { %>
<!-- write out fancy stuff -->
<% } <%>
Чтобы перебрать субданные, скажем, что SuperDuper
имеет свойство с именем SubData
, которое также является IEnumerable<Something>
. Ничто не мешает вам делать
<% foreach (var sd in Model.Data) { %>
<!-- write out some fancy stuff -->
<% foreach (var sub in sd.SubData) { %>
<!-- write out some more fancy stuff -->
<% }
} %>
Для двухколоночного макета используйте CSS.
И поскольку Razor уже в пути, я не могу удержаться, чтобы показать вам, как будут выглядеть эти примеры с новым движком:
@foreach (var sd in Model.Data) {
<!-- write out fancy stuff -->
}
@foreach (var sd in Model.Data) {
<!-- write out some fancy stuff -->
@foreach (var sub in sd.SubData) {
<!-- write out some more fancy stuff -->
}
}