Azure Functions – Json: Self referencing loop detected for property | Alan Coate...
source link: https://blog.coates.dk/2021/11/12/azure-functions-json-self-referencing-loop-detected-for-property/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Azure Functions – Json: Self referencing loop detected for property
Problem
Whilst developing a Rest API using Azure functions I got the error below.
Newtonsoft.Json: Self referencing loop detected for property 'task' with type 'System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[System.Collections.Generic.IEnumerable`1[Feature.Order.Domain.TravelCard.OrderedTravelCard],Feature.Order.Domain.TravelCard.OrderedTravelCardRepository+<Get>d__4]'. Path 'stateMachine.<>t__builder'
As we had created a lot of new models and called a number of external API’s, which had a bad habit of changing their models without notification. I assumed incorrectly that one of the swagger files for the API’s was not correct.
But after much investigation I could not detect any issue with the data returned from the external API’s and the models match correctly their definitions.
Eventually I found out what the issue was, can you see what is wrong with the following code?
Solution
See the image above that a Task<…> is returned from the OrderedTravelCardRepository.Get() function.
I had forgotten to await the asynchronous call of the function, see the fixed code below.
Simple when you know how, simply awful when you don’t!
I hope this blog post helps others avoid the time I wasted on this issue.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK