2017-09-05 19 views
-1

我有在單個視圖中的兩個表,其中示出了使用這種控制器的查詢的結果的第一個:顯示在視圖中的兩個表使用來自相同的模型數據,與含有一個重複而另一個具有不同的行

控制器:

public ActionResult ResultDetails(int? id) 
{ 
var tenders = from t in db.Tenders.Include(t => t.Compendium).Include(t => t.TrainerRegistration) select t;    

tenders = tenders.Where(q => q.Compendium.InstitutionID==id); 

return View(tenders.ToList()); 
} 

顯示數據在所述第一表是非常簡單的。然而,當我嘗試使用相同的腳手架剃刀語法在我的第二個表,它返回重複的行特別是在我item2.TrainerRegistration.NTTC

@foreach (var item2 in Model) 
{ 
    <tr> 
     <td nowrap> 
      @Html.DisplayFor(modelItem => item2.TrainerRegistration.Trainer.TrainerName) 
     </td> 
     <td nowrap> 
      @Html.DisplayFor(modelItem => item2.TrainerRegistration.Qualification.Title) 
     </td> 
     <td nowrap> 
      @Html.DisplayFor(modelItem => item2.TrainerRegistration.NTTC) 
     </td> 
    </tr> 
} 

在控制器中的查詢將真正迴歸重複,而是如何我可以刪除第二個表中的這些重複行嗎?我曾嘗試加入的GroupBy()或DISTINCT()我NTTC財產,但我不能讓它這種方式工作或者它的其他變化:

@foreach (var item2 in Model.GroupBy(x => x.TrainerRegistration.NTTC).ToList()) 

多種猜測後,改變內@foreach的說法總是影響@ Html.DisplayFor(modelItem => ITEM2。****)在這種或那種方式。我做在這一點猜測和會很感激,如果有人可以指向我這樣做的正確方法。

回答

0

我能夠通過使用優先()來解決我的問題,就行,其中被反覆TrainerRegistrationID

@foreach (var item2 in Model.GroupBy(x => x.TrainerRegistrationID).Select(y => y.First())) 
相關問題