MVC View Model show Подробная информация - PullRequest
1 голос
/ 24 октября 2011

Надеюсь, это имеет смысл.

Я создал класс, подобный следующему, который использует 3 таблицы (TerrRp, RegMg, DistMg), которые я использую в View Model:

     public class RepViewModel  

{



    public IEnumerable<TerrRp> TerrRp { get; set; }
    public IEnumerable<RegMg> RegMg { get; set; }
    public IEnumerable<DistMg> DistMg { get; set; } 



}

Мне нужно показать подробную информацию для одного из перечисленных выше состояний (таблица TerrRp) и не уверен, как это сделать, поскольку я не могу получить доступ к полям в
через что-то вроде (в этом случае я пытаюсь получить доступ кTerr_ID):

<div class="display-label">Terr_ID</div>
<div class="display-field">
    @Html.DisplayFor(model => model.Terr_ID)
</div>

Имеется в виду, как я могу сказать DisplayFor, что нужно захватить таблицу TerrRp и показать Terr_ID, поскольку мне нужно сначала получить доступ к RepViewModel, а затем TerrRp, а затем Terr_ID?Надеюсь, это имеет смысл.

1 Ответ

0 голосов
/ 25 октября 2011

Чтобы отобразить список связанных объектов:

Использование строго типизированного представления с заголовком

@model namespace.RepViewModel  

Вы должны быть в состоянии прокрутить объекты TerrRp с помощью

@foreach (var Rp in Model.TerrRp)
{
    <div class="display-label">Terr_ID</div>
    <div class="display-field">
        @Html.DisplayFor(Rp  => Rp.Terr_ID)
    </div>
}

Если вы считаете, что должен быть только один объект TerrRp, связанный с RepViewModel, тогда вы можете использовать методы First () или FirstOrDefault () в IEnumerable

<div class="display-label">Terr_ID</div>
<div class="display-field">
    @Html.DisplayFor(model => model.TerrRp.FirstOrDefault().Terr_ID)
</div>

Возможно, вы захотите сделать подсчетв объекте Model.TerrRp, чтобы проверить, что есть одна и только одна запись.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...