2011-10-24 23 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 –