#c# #entity-framework #entity-framework-core
#c# #entity-framework #entity-framework-core
Вопрос:
Я хочу получить некоторые записи из базы данных, которая зависит от трех таблиц. Три таблицы представляют собой:
1.Company(Id,Name)
2. Car(Id,CompanyId,Name)
3. Showroom(Id,CarId,Name)
Теперь одна компания содержит много автомобилей, и многие автомобили могут существовать во многих выставочных залах.
Я хочу получить записи из таблицы showroom, где автомобили компании ‘2’ существуют вместе с автомобилями. Возможно ли это сделать в entity framework core?
Ответ №1:
Я думаю, что ваши сущности будут похожи :
Компания
public class Company
{
public int Id {get; set;}
public string Name {get; set;}
public ICollection<Car> Cars {get; set;}
}
Автомобиль:
public class Car
{
public int Id{get; set;}
public string Name {get; set;}
public int CompanyId{get; set;}
public Company Company {get; set;}
}
Салон:
public class ShowRoom
{
public int Id{get; set;}
public string Name {get; set;}
public int CarId{get; set;}
public Car Car{get; set;}
}
В вашем методе:
var context = new SomeContext();
var showRooms= context.ShowRooms
.Include(x=> x.Car)
.ThenInclude(x=> x.Company)
.Where(x=> x.Car.Company.Id== 2)
.ToList();