Допустим, у вас есть модель представления со свойством, которое возвращает список объектов, таких как
public class Product
{
public int ProductId { get; set; }
public string Description { get; set; }
public List<Detail> Details { get; set; }
}
, а затем вы хотите создать представление, использующее эту модель.Вот ваш метод действия
public ViewResult Edit(int productId)
{
Product product = contextDB.Products.FirstOrDefault(p => p.ProductId == productId);
return View("Edit", product);
}
Сгенерированный код будет выглядеть примерно так (неполно)
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>MyViewModel</legend>
<div class="editor-label">
@Html.LabelFor(model => model.ProductId)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.ProductId)
@Html.ValidationMessageFor(model => model.ProductId)
</div>
...
<fieldset>
}
Сгенерированный код по умолчанию НЕ будет содержать код для свойства List.Генератор кода движка представления Razor идет так же глубоко, как свойства модели.Вы можете написать код, который обращается к списку сведений в представлении, но это должен быть пользовательский код.