Wykryto pętlę odwoływania się do struktury encji

Mam dziwny błąd. Eksperymentuję z interfejsem WWW .NET 4.5, Entity Framework i MS SQL Server. Stworzyłem już bazę danych i skonfigurowałem poprawne klucze główne i obce oraz relacje.

Stworzyłem model .edmx i zaimportowałem dwie tabele: Pracownik i Dział. Dział może mieć wielu pracowników i taki związek istnieje. Stworzyłem nowy kontroler o nazwie EmployeeController, używając opcji rusztowania, aby utworzyć kontroler API z akcjami odczytu / zapisu przy użyciu Entity Framework. W kreatorze zaznaczono pracownika jako model i poprawną jednostkę dla kontekstu danych.

Utworzona metoda wygląda tak:

public IEnumerable<Employee> GetEmployees()
{
    var employees = db.Employees.Include(e => e.Department);
    return employees.AsEnumerable();
}

Gdy dzwonię do mojego interfejsu API przez / api / Employee, otrzymuję ten błąd:

Typ „ObjectContent`1” nie mógł serializować treści odpowiedzi dla aplikacji typu „content / json”; ... System.InvalidOperationException "," StackTrace ": null," InnerException ": {" Message ":" Wystąpił błąd. "," ExceptionMessage ":" Wykryto pętlę odniesienia z typem 'System.Data.Entity.DynamicProxies .Employee_5D80AD978BC68A1D8BD675852F94E8B550F4CB150ADB8649E8998B7F95422552 '. Ścieżka [0] .Department.Employees '. ", ExceptionType": "Newtonsoft.Json.JsonSerializationException", "StackTrace": "...

Dlaczego to samo odwołuje się [0] .Department.Employees? To nie ma sensu. Spodziewałbym się, że to się stanie, jeśli będę miał referencje cykliczne w mojej bazie danych, ale jest to bardzo prosty przykład. Co może być nie tak?

questionAnswers(10)

yourAnswerToTheQuestion