MVC视图模型显示详细信息

时间:2011-10-24 19:58:35

标签: model-view-controller view model detail

我希望这是有道理的。

我创建了一个类如下的类,它使用了我在View Model中使用的3个表(TerrRp,RegMg,DistMg):

     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>

意思是,我如何告诉Di​​splayFor获取TerrRp表并显示Terr_ID,因为我需要首先访问RepViewModel然后是TerrRp然后是Terr_ID?希望这是有道理的。

1 个答案:

答案 0 :(得分:0)

显示关联对象列表:

使用带标题的强类型视图

@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关联,那么您可以在IEnumerable上使用First()或FirstOrDefault()方法

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

您可能希望对Model.TerrRp对象进行计数,以验证是否只有一个条目。

相关问题