Сначала я использую код структуры сущности, ниже приведена таблица, из которой я получаю данные с определенными условиями.
public class Case
{
public int CaseId { get; set; }
public string Name { get; set; }
public DateTime StartDateTime { get; set; }
public DateTime? EndDateTime { get; set; }
public virtual ICollection<CaseUser> CaseUsers { get; set; }
public virtual ICollection<Sector> Sectors { get; set; }
public virtual ICollection<CasePoaSerie> CasePoaSeries { get; set; }
public virtual ICollection<Pod> Pods { get; set; }
public virtual ICollection<Poa> Poas { get; set; }
public Case()
{
CaseUsers = new Collection<CaseUser>();
Sectors = new Collection<Sector>();
CasePoaSeries = new Collection<CasePoaSerie>();
Pods = new Collection<Pod>();
Poas = new Collection<Poa>();
}
}
Функция репозитория:
public List<Case> GetActiveCasesForUser(int userId)
{
var queryable = DbSet.Include(x => x.CaseUsers);
queryable = queryable.Where(x => x.CaseUsers.Any(o => o.UserId == userId));
queryable = queryable.Where(m => m.StartDateTime <= DateTime.Now && (m.EndDateTime == null || m.EndDateTime <= DateTime.Now));
return queryable.ToList();
}
Проблема:
В наборе результатов мне нужны только данные, относящиеся к таблице дел и таблице пользователей, но в результате есть данные всех связанных таблиц, включая сектора, регистры, стручки и горохи, которые не нужны.
Может ли кто-нибудь помочь мне, чтобы в моем наборе результатов было только содержимое первичной таблицы и содержимое таблицы caseusers, а в остальных таблицах - 0.