2017-09-05 1 views
-1

Ich habe zwei Tabellen in einer einzigen Ansicht, wobei die erste die Ergebnisse einer Abfrage mit diesem Controller zeigt:Zeigen Sie zwei Tabellen in der Ansicht unter Verwendung von Daten aus demselben Modell, wobei das eine Duplikate enthält, während das andere eindeutige Zeilen enthält.

Controller:

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()); 
} 

die Daten in der ersten Tabelle angezeigt ist ziemlich einfach. Allerdings, wenn ich versuchte, das gleiche rüstet Rasierer Syntax in meiner zweiten Tabelle, diese zurück doppelte Zeilen besonders in meiner item2.TrainerRegistration.NTTC Spalte

@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> 
} 

die Abfrage in der Steuerung würde wirklich Duplikate zurückgeben, aber wie kann ich diese doppelten Zeilen in der zweiten Tabelle entfernen? Ich habe das Hinzufügen GroupBy versucht() oder Distinct(), um meine NTTC Eigenschaft, aber ich kann es nicht auf diese Weise oder seine andere Variationen zu arbeiten:

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

Nach mehreren Vermutungen, würde das Argument innerhalb @foreach verändert immer beeinflussen die @ Html.DisplayFor (ModelItem => item2. ****) auf die eine oder andere Weise. Ich bin an diesem Punkt ratlos und würde es wirklich schätzen, wenn mir jemand den richtigen Weg zeigen könnte, dies zu tun.

Antwort

0

konnte ich mein Problem lösen, indem Sie zuerst(), auf Zeilen, in denen TrainerRegistrationID

wiederholt wird
@foreach (var item2 in Model.GroupBy(x => x.TrainerRegistrationID).Select(y => y.First())) 
Verwandte Themen