Example #1
0
        private void ConfigureRoutes()
        {
            // Web API configuration and services (default is jason)
            GlobalConfiguration.Configure(config => {
                config.Formatters.Remove(config.Formatters.XmlFormatter);
                config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();

                config.MapHttpAttributeRoutes();
                config.Routes.MapHttpRoute(
                    name: "DefaultApi",
                    routeTemplate: "api/{controller}/{id}",
                    defaults: new { id = RouteParameter.Optional }
                    );
            });

            // MVC
            RouteTable.Routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            var constraintsResolver = new System.Web.Mvc.Routing.DefaultInlineConstraintResolver();

            constraintsResolver.ConstraintMap.Add(ValidSiteNameRouteConstraint.SiteParameterName, typeof(ValidSiteNameRouteConstraint));
            constraintsResolver.ConstraintMap.Add(ValidZoneNameRouteConstraint.ZoneParameterName, typeof(ValidZoneNameRouteConstraint));
            constraintsResolver.ConstraintMap.Add(ValidPageNameRouteConstraint.PageParameterName, typeof(ValidPageNameRouteConstraint));

            RouteTable.Routes.MapMvcAttributeRoutes(constraintsResolver);
            AreaRegistration.RegisterAllAreas();
        }
Example #2
0
 public static void MapMvcAttributeRoutes(RouteCollection routes)
 {
     // enable mvc attribute routing (api is setup in WebApiConfig)
     var mvcConstraintsResolver = new System.Web.Mvc.Routing.DefaultInlineConstraintResolver();
     mvcConstraintsResolver.ConstraintMap.Add("rootpage", typeof(RootPageConstraint));
     routes.MapMvcAttributeRoutes(mvcConstraintsResolver);
 }