2011-09-20 71 views
0

在我的控制器中,我返回View和產品列表。獲取列表中的所有值而不重複遍歷它們

返回查看(產品列表)

在我看來,我想要得到的產品列表的所有值,而不遍歷,他們要麼與每個循環或任何其他方式。

我需要這樣做,因爲我要在視圖中不同設計每個產品我不能使用for each循環

第一ProductID等於可使用Model.Firstordefault()。產品編號。同樣,我可以獲取productName,productDescription等。

但是我怎樣才能得到第二個productId到列表中的第n個productId?

謝謝 Arnab 。

回答

1

這是一個很棒的候選人顯示模板。在你的強類型的觀點只是:

@model IEnumerable<ProductViewModel> 
<table> 
    <thead> 
     <tr> 
      <th>Id</th> 
      <th>Name</th> 
      <th>Description</th> 
     </tr> 
    </thead> 
    <tbody> 
     @Html.DisplayForModel() 
    </tbody> 
</table> 

,然後定義它會自動被渲染爲集合中的每個元素的顯示模板(~/Views/Shared/DisplayTemplates/ProductViewModel.cshtml):由公約

@model ProductViewModel 
<tr> 
    <td>@Html.DisplayFor(x => x.Id)</td> 
    <td>@Html.DisplayFor(x => x.Name)</td> 
    <td>@Html.DisplayFor(x => x.Description)</td> 
</tr> 

Templated helpers工作,你永遠不會有在你的視圖中編寫任何循環。

+0

謝謝,但這不會在我的情況下工作作爲寬度等將是相同的所有產品,我的設計不支持,我想我有一個soln。,現在測試.. Model.ElementAt(0 ).ProductId – Arnab

相關問題