Здравствуйте!
Ситуация такая, с разметки я делаю ajax запрос на получение списка событий
$.ajax({
url: '@Url.Action("RequestEventList", "Event")',
method: 'post',
success: (response) => {
let events = response.eventList;
},
error: (response) => {
console.log(response);
}
})
Я вытягиваю из БД этот список
return await _repository.Entities
.Where(ev => !ev.DeletedOn.HasValue)
.ToListAsync();
И передаю в формате JSON
public async Task<IActionResult> RequestEventList()
{
return Json(new { eventList = await _eventService.GetAll() });
}
В таком случае у меня всё нормально работает. Но, если я, при получении списка событий из БД делаю include
return await _repository.Entities
.Include(ev => ev.Executor)
.Include(ev => ev.Client)
.Where(ev => !ev.DeletedOn.HasValue)
.ToListAsync();
Тогда я получаю на разметке ошибку HttpStatusCode 500
Почему так происходит, и как это выправить?
UPD: Может ли это быть связанно с тем, что JSON просто не может сериализовать сложный объект, т.е., если в этом объекте есть ещё объект? Если да, то как мне сделать в таком случае?