該查詢返回員工ID,姓名,公司ID,公司名稱和公司城市。我缺少員工電子郵件地址(存儲在EmployeeEmailAddress表中的emailAddress)和員工電話號碼(存儲在EmployeePhoneNumbers表中的phoneNumber)。.SelectMany()並從多個相關表中獲取數據
我需要添加.SelectMany()以獲取母公司關係並訪問公司ID,姓名和城市。但是,現在,我無法訪問PersonOrgMap表中找不到的任何屬性。我無法導航到任何其他表格。刪除.SelectMany()允許我導航到其他表,但我無法訪問母公司信息。
var employees = Contacts.Where(c => c.ContactAttributes
.Any (ca => ca.AttributeID == 1153))
.SelectMany (x => x.ChildPersonOrgMaps)
.Select (c => new { employeeId = c.Child.ContactID,
c.Child.FirstName,
c.Child.LastName,
companyId = c.ParentContactID,
c.Parent.OrganizationName,
c.Parent.City
}
)
.OrderBy (c =>c.LastName).ThenBy(x => x.FirstName)
.Dump();
+1爲無恥的LINQPad插頭;-)非常好的產品! – DenaliHardtail 2011-02-01 14:22:34