The fixes, Ignoring circular reference globally.
You can make the default behavior with the help
of Json-Serializer-Settings and add below code in Application_Start().
JsonConvert.DefaultSettings =
() => new JsonSerializerSettings
{
Formatting = Newtonsoft.Json.Formatting.Indented,
};
Here is some limitations for the same as given
below.
1.
Sometime we loses data by looping reference information.
2.
Fixes is only applies to JSON.net.
3.
If there is a deep reference chain
that we cannot be controlled to level of
references.
Example code as given below.
namespace demo_example
{
public class MvcApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
JsonConvert.DefaultSettings =
() => new JsonSerializerSettings
{
Formatting = Newtonsoft.Json.Formatting.Indented,
ReferenceLoopHandling =
Newtonsoft.Json.ReferenceLoopHandling.Ignore
};
}
}
}
For more detail, you can go links