Ребята У меня есть отношение "Один ко многим" к тому же классу, который называется пользователем,
Я возвращаю один экземпляр пользователя в методе web apis get
он отлично работает, поскольку у меня нет никаких
User
ID | Name
0 | A
1 | B
Friends Table ( This table is used to build the one to many relationship )
User_ID | Friend_ID
1 | 0
0 | 1
Это мой метод GetMethod
[HttpGet]
public Models.User Authenticate()
{
try
{
return db.Users.SingleOrDefault(x => x.ID == 0 ) ;
}
catch
{
return null;
}
}
Если я получу и верну субъект пользователя, я получаю сообщение об ошибке
Кто-нибудь может помочь мне исправить эту ошибку ниже?
{ "Сообщение": "Произошла ошибка.", "ExceptionMessage": "Тип объекта ObjectContent`1 не смог сериализовать тело ответа для типа контента" text/html; charset = utf-8 ".," ExceptionType ":" System.InvalidOperationException "," StackTrace ": null," InnerException": { "Сообщение": "Произошла ошибка.", "ExceptionMessage": "Self-референтный цикл обнаружен с типом "System.Data.. Путь 'Entity.DynamicProxies.Friend_E5C79F4736EB2750392FFC7061B18E9C12F15F9583409603C75C5D1B1F7358D4' Friends1 [0].User.Friends" "ExceptionType.": "Newtonsoft.Json.JsonSerializationException" "StackTrace": "в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CheckForCircularReference(JsonWriter автор, значение объекта, свойство JsonProperty, контракт JsonContract, JsonContainerContract containerContract, JsonProperty containerProperty)\r\n в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, значения IWrappedCollection, контракт JsonArrayContract, член JsonProperty, JsonContainer Контракт collectionContract, JsonProperty containerProperty)\r\n в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, значение Object, JsonContract valueContract, член JsonProperty, JsonContainerContract containerContract, JsonProperty containerProperty)\r\n в Newtonsoft.Json.Serialization. JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract, член JsonProperty, JsonContainerContract collectionContract, JsonProperty containerProperty)\r\n в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, значение Object, JsonContract valueContract, член JsonProperty, JsonContainerContract containerContract, JsonProperty containerProperty)\r\n в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, значение Object, JsonObjectContract, член JsonProperty, JsonContainerContract collectionContract, JsonProperty содержит rProperty)\r\n в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, значение Object, JsonContract valueContract, член JsonProperty, JsonContainerContract containerContract, JsonProperty containerProperty)\r\n в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList( JsonWriter, IWrappedCollection, JsonArrayContract, член JsonProperty, JsonContainerContract collectionContract, JsonProperty containerProperty)\r\n в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, значение Object, JsonContract valueContract, член JsonProperty, JsonContainerContract containerContract, JsonProperty containerProperty )\r\n в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, значение Object, JsonObjectContract, член JsonProperty, JsonContainerContract collectionContract, JsonProperty containerProperty)\r\n в Newtonsoft.Json.Serial ization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, значение Object, JsonContract valueContract, член JsonProperty, JsonContainerContract containerContract, JsonProperty containerProperty)\r\n в Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, значение объекта)\r\n на Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, значение объекта)\r\n в Newtonsoft.Json.JsonSerializer.Serialize(JsonWriter jsonWriter, значение Object)\r\n в System.Net.Http.Formatting.JsonMediaTypeFormatter. < > c__DisplayClassd.b__c()\r\n в System.Threading.Tasks.TaskHelpers.RunSynchronously(действие action, CancellationToken token)" }}