Это ожидаемая ошибка, и причина в том, что ваши типы ссылаются друг на друга как Infinity Mirror
.Для решения проблемы у вас есть несколько вариантов.
1- Вы можете разработать ViewModel
и затем сериализовать его:
public class InternViewModel{
public int Id {get; set;}
public String Name {get; set;}
public List<String> Tehcnologies {get; set;}
}
2- Вы можете выбрать свойства, которые вам нужны при возврате сущности в ваших действиях:
public async Task<List<Technology>> Get() {
var data = dbContext.Set<Technology>().Select(x=> new Technology{
Id = x.Id,
Name = x.Name,
Intern= new Intern {
Id = x.Technology.Id,
Name = x.Technology.Name,
Technologies = null
}
});
return await data.ToListAsync();
}
3 - Загрузите только то, что вам нужно, что известно как Explicit Loading
.