Ich verwende LINQ Self Join Query
, um Daten in der Ansicht anzuzeigen. Meine SQL
Tabelle enthält einige Mitarbeiterdetails. Ich muss Employee-Manager
innerhalb der DropDownListFor
Kontrolle zeigen. Ich habe diese Abfrage ausprobiert und es funktioniert, allerdings nicht so, wie ich es möchte. Die Abfrage zeigt Employee-Manager
wie in { EmployeeManagerID = Roger }
an, aber es sollte nur Roger
angezeigt werden. Was ist falsch an der Abfrage unten?asp.net-MVC Self Join in LINQ-Abfrage
var empmngr = from m in db.Employes
join e1 in db.Employes on m.EmployeeManagerID equals e1.EmpID
select new
{
EmployeeManagerID = e1.Name,
};
ViewData["EmployeeManager"] = new SelectList(empmngr.ToList(), "Name");
Aussicht:
<div class="editor-label">
EmployeeManager
</div>
<div class="editor-field">
@Html.DropDownListFor(model => model.Name, ViewData["EmployeeManager"] as SelectList)
@Html.ValidationMessageFor(model => model.Name)
</div>
Die Mitarbeiter Tabelle:
EmpID Name EmployeeManagerID Designation Phone Address
1 Mike 3 Developer 123456 Texas
2 David 3 RM 123456 Delhi
3 Roger NULL GM 123456 Dallas
4 Marry 2 Developer 123456 NY
Wo ist Ali in Ihrer Tabelle? –
@The_Outsider sorry 'Roger' not ali – ahosam
Mögliches Duplikat von [LINQ-Query selbst beitreten und Ansicht zurückgeben] (https://Stackoverflow.com/questions/17610890/self-join-in-linq-query-and-return- view) –