Files
cms_thermo_active/Thermo.Active/App_Start/WebApiConfig.cs
T
2020-06-19 19:28:07 +02:00

41 lines
1.4 KiB
C#

using Newtonsoft.Json.Serialization;
using System.Web.Http;
using System.Web.Http.ExceptionHandling;
namespace Thermo.Active
{
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
var form = config.Formatters.FormUrlEncodedFormatter;
var xml = config.Formatters.XmlFormatter;
var json = config.Formatters.JsonFormatter;
config.Formatters.Remove(form);
config.Formatters.Remove(xml);
config.Formatters.Remove(json);
config.Formatters.Add(json);
config.Formatters.Add(xml);
config.Formatters.Add(form);
config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
config.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;
config.EnableCors();
config.Services.Replace(typeof(IExceptionHandler), new WebApiUnhandledExceptionHandler());
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
}