У меня есть две модели классов.
Projects
* * 1004
public class Project
{
public Project()
{
}
[Key]
public int Id { get; set; }
public string Tag { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public virtual List<Task> Tasks { get; set; }
}
А Tasks
:
public class Task
{
public Task()
{
}
[Key]
public int Id { get; set; }
[ForeignKey("Project")]
public int ProjectId { get; set; }
public Project Project { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public Priority Priority { get; set; }
public int? StoryPoints { get; set; }
public DateTime? StartTime { get; set; }
public DateTime? EndTime { get; set; }
}
У меня есть простой ProjectController
с GetProjects
метод:
[HttpGet]
public IEnumerable<Project> GetProjects()
{
return context.Projects.Include(t => t.Tasks);
}
Но из этого GET
я получаю нечто, похожее на это:
Как видите, tasks
обрезаны.
Но когда я удаляю Include
:
[HttpGet]
public IEnumerable<Project> GetProjects()
{
return context.Projects;
}
Все отлично работает:
Но, конечно, мы не получаем задачи.
У меня вопрос, как заставить это включенное Tasks
проецироваться с .Net Core 2.1 WebApi
? Что там происходит?
PS. я пробовал ToList()
и IActionResult
с ObjectResponse
, все работает одинаково (вырезанные задачи и проекты). Postman
не могу получить от него ничего, поэтому я использую хром, чтобы показать вам случай