1. 程式人生 > >Json序列化循環引用的問題

Json序列化循環引用的問題

sel sof json.js Matter path cep 代碼 exc 錯誤

今天在發布接口的時候出突然出現了一個問題,報錯代碼為:

1 An exception has occurred while using the formatter ‘JsonMediaTypeFormatter‘ to generate sample for media type ‘application/json‘.
2 Exception message: Self referencing loop detected for property ‘******‘ with type ‘******‘. Path ‘[0].******[0]‘.

技術分享圖片

經過研究,解決方法如下:

找到相應的屬性,添加 attribute:[IgnoreDataMember]


還有時候會出現特殊情況,即使標記以上的attribute也不能解決

具體錯誤為:

Newtonsoft.Json.JsonSerializationException 時 Self referencing loop detected for property *****

可以在web api的config中(WebApiConfig.cs)添加一下代碼,用以過濾掉此問題

技術分享圖片

奉上代碼:

1   config.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;

Json序列化循環引用的問題