public static void Register(HttpConfiguration config) { config.MapHttpAttributeRoutes(); var cors = new EnableCorsAttribute("*", "*", "*"); config.EnableCors(cors); var jsonFormatter = config.Formatters.JsonFormatter; jsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); config.AddJsonpFormatter(); }
public static void Register(HttpConfiguration config) { config.AddJsonpFormatter(config.Formatters.JsonFormatter,"callback"); config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html")); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}/{format}", defaults: new { id = RouteParameter.Optional, format = RouteParameter.Optional } ); // Uncomment the following line of code to enable query support for actions with an IQueryable or IQueryable<T> return type. // To avoid processing unexpected or malicious queries, use the validation settings on QueryableAttribute to validate incoming queries. // For more information, visit http://go.microsoft.com/fwlink/?LinkId=279712. //config.EnableQuerySupport(); // To disable tracing in your application, please comment out or remove the following line of code // For more information, refer to: http://www.asp.net/web-api config.EnableSystemDiagnosticsTracing(); }
public static void Register(HttpConfiguration config) { #if DEBUG config.EnableSystemDiagnosticsTracing(); #endif config.Services.Replace(typeof (IHttpControllerSelector), new RouteVersionedControllerSelector( GlobalConfiguration.Configuration)); config.AddJsonpFormatter(callbackQueryParameter:"callback"); //http://www.strathweb.com/2013/06/supporting-only-json-in-asp-net-web-api-the-right-way/ //config.Services.Replace(typeof(IContentNegotiator), new JsonContentNegotiator()); /* ==Geocoding Endpoints== */ config.Routes.MapHttpRoute( name: "v1_GeocodeApi", routeTemplate: "api/v{version}/geocode/{street}/{zone}", defaults: new { action = "get", controller = "Geocode", version = "1" }); config.Routes.MapHttpRoute( name: "v1_GeocodeMultipleApi", routeTemplate: "api/v{version}/geocode/multiple", defaults: new { action = "multiple", controller = "Geocode", version = "1" }); config.Routes.MapHttpRoute( name: "v1_GeocodeReverseApi", routeTemplate: "api/v{version}/geocode/reverse/{x}/{y}", defaults: new { action = "reverse", controller = "Geocode", version = "1" }); config.Routes.MapHttpRoute( name: "v1_GeocodeRouteMilePost", routeTemplate: "api/v{version}/geocode/milepost/{route}/{milepost}", defaults: new { action = "RouteMilePost", controller = "Geocode", version = "1" }); config.Routes.MapHttpRoute( name: "v1_GeocodeReverseMilePost", routeTemplate: "api/v{version}/geocode/reversemilepost/{x}/{y}", defaults: new { action = "ReverseMilePost", controller = "Geocode", version = "1" }); config.Routes.MapHttpRoute( name: "v1_AgoGeocodeActivationApi", routeTemplate: "api/v{version}/geocode/ago/agrc-ago/GeocodeServer", defaults: new { action = "ArcGisOnlineActivation", controller = "Geocode", version = "1" }); config.Routes.MapHttpRoute( name: "v1_AgoGeocodeApi", routeTemplate: "api/v{version}/geocode/ago/agrc-ago/GeocodeServer/findAddressCandidates", defaults: new { action = "ArcGisOnline", controller = "Geocode", version = "1" }); /* ==Search Endpoints== */ //http://webapi/api/v1/search/sgid10.boundaries.counties/name?apiKey= config.Routes.MapHttpRoute( name: "v1_SearchApi", routeTemplate: "api/v{version}/search/{featureClass}/{returnValues}", defaults: new { action = "get", controller = "Search", version = "1" }); /* ==Info Endpoints== */ config.Routes.MapHttpRoute( name: "v1_InfoApi", routeTemplate: "api/v{version}/info/FeatureClassNames", defaults: new { action = "FeatureClassNames", controller = "Info", version = "1" }); config.Routes.MapHttpRoute( name: "v1_InfoAttributesApi", routeTemplate: "api/v{version}/info/FieldNames/{featureClass}", defaults: new { action = "FeatureClassAttributes", controller = "Info", version = "1" }); }
public static void Register(HttpConfiguration config) { // Web API configuration and services //dependency injection var container = new UnityContainer(); // Repository container.RegisterType<IBeerRepository, BeerDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<IBeerStyleRepository, BeerStyleDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<IBreweryRepository, BreweryDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<IFermentableRepository, FermentableDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<IHopRepository, HopDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<IOriginRespository, OriginDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<IOtherRepository, OtherDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<ISupplierRepository, SupplierDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<IUserRepository, UserDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<IYeastRepository, YeastDapperRepository>(new HierarchicalLifetimeManager()); container.RegisterType<IGlassRepository, GlassDapperRepository>(new HierarchicalLifetimeManager()); //Services container.RegisterType<IHopService, HopService>(new HierarchicalLifetimeManager()); container.RegisterType<IYeastService, YeastService>(new HierarchicalLifetimeManager()); container.RegisterType<IFermentableService, FermentableService>(new HierarchicalLifetimeManager()); container.RegisterType<IOtherService, OtherService>(new HierarchicalLifetimeManager()); container.RegisterType<ISupplierService, SupplierService>(new HierarchicalLifetimeManager()); container.RegisterType<IOriginService, OriginService>(new HierarchicalLifetimeManager()); container.RegisterType<IBeerStyleService, BeerStyleService>(new HierarchicalLifetimeManager()); container.RegisterType<IBreweryService, BreweryService>(new HierarchicalLifetimeManager()); container.RegisterType<IGlassService, GlassService>(new HierarchicalLifetimeManager()); container.RegisterType<IUserService, UserService>(new HierarchicalLifetimeManager()); container.RegisterType<IBeerService, BeerService>(new HierarchicalLifetimeManager()); //Elasticsearch container.RegisterType<IHopElasticsearch, HopElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<IYeastElasticsearch, YeastElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<IFermentableElasticsearch, FermentableElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<IOtherElasticsearch, OtherElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<ISupplierElasticsearch, SupplierElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<ISearchElasticsearch, SearchElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<IOriginElasticsearch, OriginElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<IBeerStyleElasticsearch, BeerStyleElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<IBreweryElasticsearch, BreweryElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<IGlassElasticsearch, GlassElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<IUserElasticsearch, UserElasticsearch>(new HierarchicalLifetimeManager()); container.RegisterType<IBeerElasticsearch, BeerElasticsearch>(new HierarchicalLifetimeManager()); config.DependencyResolver = new UnityResolver(container); //// Web API routes config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); // There can be multiple exception loggers. (By default, no exception loggers are registered.) config.Services.Add(typeof(IExceptionLogger), new Log4NetExceptionLogger()); // There must be exactly one exception handler. (There is a default one that may be replaced.) // To make this sample easier to run in a browser, replace the default exception handler with one that sends // back text/plain content for all errors. config.Services.Replace(typeof(IExceptionHandler), new GlobalExceptionHandler()); config.AddJsonpFormatter(); //var formatters = GlobalConfiguration.Configuration.Formatters; //var jsonFormatter = formatters.JsonFormatter; //var settings = jsonFormatter.SerializerSettings; //settings.Formatting = Formatting.Indented; //settings.ContractResolver = new CamelCasePropertyNamesContractResolver(); //var appXmlType = config.Formatters.XmlFormatter.SupportedMediaTypes.FirstOrDefault(t => t.MediaType == "application/xml"); //config.Formatters.XmlFormatter.SupportedMediaTypes.Remove(appXmlType); config.Formatters.XmlFormatter.UseXmlSerializer = true; }