У меня есть число таблиц вроде:
- User_cs
- UserEducation_cs
- Опыт
следующая диаграмма базы данных
Мне нужна информация о пользователях
- их основная информация из User_cs
- Их последнее образование (то есть последняя степень, которую они приобрели)
- Если они в настоящее время работают (если пользователь не работает), поля в Experience_cs будут NULL.
Я так могу сделать следующее, но у меня возникают проблемы 1) как в середине выражения lamda я делаю (IsWorking == true) и после этого присоединяюсь к следующей таблице. Следующее - мое выражение
List<Models.UserInfo> v = context.User_cs
.Join(context.UserEducation_cs, u => u.UserName, ue => ue.UserName, (u, ue) => new UserEducation_cs
{
UserName = ue.UserName,
EducationId = ue.EducationId,
StartDate = ue.StartDate,
EndDate = ue.EndDate
}).
Join(context.Education_cs, ue => ue.EducationId, e => e.EducationId, (ue, e) => new
{
UserName = ue.UserName,
EducationId = ue.EducationId,
StartDate = ue.StartDate,
EndDate = ue.EndDate,
Title = e.Title,
Major = e.Major,
MajorDetails = e.MajorDetails,
Info = e.Info
}).
Join(context.Experiences, lst => lst.UserName, ex => ex.UserName, (lst, ex) => new Models.UserInfo
{
UserName = ex.UserName,
EducationId = lst.EducationId,
StartDate = lst.StartDate,
EndDate = lst.EndDate,
Title = lst.Title,
Major = lst.Major,
MajorDetails = lst.MajorDetails,
Info = lst.Info,
IsWorking = ex.IsWorking,
StartDate_ex=ex.StartedDate,
}).
Where(iw => iw.IsWorking == true).ToList();
Любая помощь будет оценена