Otomatik Mühendis

ASP.NET Web API'de JSON Formatını Güzelleştirmek

günü tarafından yayınlandı.

ASP.NET Web API uygulamalarında oluşan JSON formatlı yanıtları bazen okumakta zorlanıyoruz ve bu yanıtları JSONLint gibi sitelerle okunabilir hale getiriyoruz. Bunun önüne geçmek için API ayarlarında ufak bir düzenleme ile göze hitap eden sonuçlar elde edebiliriz.

Newtonsoft.Json kütüphanesinin yardımı ile WebApiConfig’e aşağıdaki ayarları uygularsak JSON response body’ler indented gözükecek ve property isimleri camelCase formatına çevrilecektir.

using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
using System.Web.Http;

namespace GigHub
{
  public static class WebApiConfig
  {
    public static void Register(HttpConfiguration config)
    {
      var settings = GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings;
      settings.ContractResolver = new CamelCasePropertyNamesContractResolver();
      settings.Formatting = Formatting.Indented;

      config.MapHttpAttributeRoutes();

      config.Routes.MapHttpRoute(
        name: "DefaultApi",
        routeTemplate: "api/{controller}/{id}",
        defaults: new { id = RouteParameter.Optional }
      );
    }
  }
}
json, api, asp.net, newtonsoft Yazılım

Yazar: Olcay Bayram

Çeşitli teknoloji firmalarında çalışmış, yurtiçi ve yurtdışı farklı sektörlerden tecrübe edinmiş, derdini iki yabancı dilde anlatabilen bir yazılım uzmanı.