2011-10-24 24 views
1

我希望这是有道理的。MVC查看模型显示详细资料

我创造了这样的使用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; } 



} 

我需要显示为上述ABLES之一的详细信息(TerrRp表)和不知道如何做到这一点,因为我不能够通过类似的信息(在这种情况下,我试图访问Terr_ID)来访问
领域:

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

含义,如何我可以告诉DisplayFor以获得TerrRp t的控制权能够显示Terr_ID,因为我需要首先访问RepViewModel然后TerrRp然后Terr_ID?希望这是有道理的。

回答

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对象进行计数以验证是否有且仅有一个条目。

+0

谢谢AlexC,但作为细节只有1记录,是否有另一种方式去了解这个或是这是如何编辑记录的标准方式ViewModel –