Я читал, что плохой практикой использовать любую логику в представлении при кодировании MVC. Но обычно я создал таблицы с помощью for each
таким образом:Можно ли использовать для каждого цикла в представлении (альтернативы)?
@ModelType IEnumerable(of ViewModel)
<table>Prop1
<thead>
<tr>
<th>
@Html.DisplayNameFor(Function(model) model.Prop1)
</th>
<th>
@Html.DisplayNameFor(Function(model) model.Prop2)
</th>
</tr>
</thead>
<tbody>
@For Each item In Model
@<text>
<tr>
<td>
@Html.DisplayFor(Function(model) model.Prop1)
</td>
<td>
@Html.DisplayFor(Function(model) model.Prop2)
</td>
</tr>
</text>
Next
</tbody>
</table>
Есть ли альтернативный способ, или это немного логики в порядке?
это то, что по умолчанию список scaffold template делает так, я бы предположил, что это прекрасно. я бы не стал рассматривать эту «логику» –
JamieD77
Почему бы и нет? Где вы это читали? –
Слово логика слишком широка, вы должны быть более конкретным. Бизнес-логика должна быть вне поля зрения (например: вычисление общей цены предметов), отображающая логика должна быть в представлении (например: цикл для отображения элементов). –