0
Я новичок в Entity Framework.
Я использую абстрактный шаблон репозитория.
Смотрите, у меня есть 2 таблицы (сущности).
InspectionReport и Projects.
Поле идентификатора Проектов является внешним в InspectionReport.
Я успешно загрузил данные из InspectionReport, по отдельности. Но я хочу загрузить имя проекта из таблицы проектов по идентификатору проекта в InspectionReport.
Я пробовал это, но это не работает.
public List<InspectionReport> GetInspectionReportListFiltered()
{
List<InspectionReport> InspectionReportList = new List<InspectionReport>();
var query = uow.InspectionReportRepository.GetQueryable().AsQueryable();
query = ququery.Join(uow.ProjectsRepository.GetQueryable().AsQueryable(), InspectionRep => InspectionRep.ProjectID, project => project.ID, (InspectionRep, project) => new {InspectionReport= InspectionRep, Projects= project });
InspectionReportList = query.ToList();
return InspectionReportList;
}
Полный код:
private AbstractRepository<InspectionReport> InspectionReportRepo;
private AbstractRepository<Projects> ProjectsRepo;
public AbstractRepository<InspectionReport> InspectionReportRepository
{
get
{
if (this.InspectionReportRepo == null)
{
this.InspectionReportRepo = new AbstractRepository<InspectionReport>(context);
}
return InspectionReportRepo;
}
}
public AbstractRepository<Projects> ProjectsRepository
{
get
{
if (this.ProjectsRepo == null)
{
this.ProjectsRepo = new AbstractRepository<Projects>(context);
}
return ProjectsRepo;
}
}
InspectionReport class:
public class InspectionReport
{
//General Details
public int InspectionReportID { get; set; }
public int ProjectID { get; set; }
[ForeignKey("ProjectID")]
public virtual Projects Projects { get; set; }
}}
Projects.cs
public class Projects
{
public int ID { get; set; }
public string ProjectNo { get; set; }
}