public void Configuration(IAppBuilder app)
        {
            HttpConfiguration config = new HttpConfiguration();

            config.Services.Replace(typeof(IAssembliesResolver), new TestWebApiResolver());

            var routeProvider = new DirectRouteProvider();

            config.MapHttpAttributeRoutes(routeProvider);

            config.Formatters.Remove(config.Formatters.XmlFormatter);

            app.UseWebApi(config);
        }
        public static VersionedHttpConfiguration WithApiVersioning(
            this HttpConfiguration httpConfiguration,
            Action <ApiVersionConfiguration> configureApiVersion)
        {
            ApiVersionConfiguration versionConfiguration =
                new ApiVersionConfiguration();

            configureApiVersion(versionConfiguration);

            var routeProvider = new DirectRouteProvider("api");

            httpConfiguration.MapHttpAttributeRoutes(routeProvider);

            return(new VersionedHttpConfiguration(
                       httpConfiguration,
                       versionConfiguration));
        }
        public async Task AttributeRouting_DirectRouteProvider_ActionRoute()
        {
            var actionRoutes = new Dictionary <string, IEnumerable <IDirectRouteFactory> >()
            {
                { "Get239303030", new[] { new RouteAttribute("CoolRouteBro") } }
            };

            var routeProvider = new DirectRouteProvider(null, actionRoutes);


            var request = new HttpRequestMessage(HttpMethod.Get, "http://localhost/CoolRouteBro");

            var response = await SubmitRequestAsync(request, routeProvider);

            Assert.True(response.IsSuccessStatusCode);
            Assert.Equal("DirectRouteProviderController.Get239303030()", GetContentValue <string>(response));
        }
        public async Task AttributeRouting_DirectRouteProvider_ControllerRoute_TraditionalRouteDoesntMatch()
        {
            var controllerRoutes = new Dictionary <Type, IEnumerable <IDirectRouteFactory> >()
            {
                { typeof(DirectRouteProviderController), new[] { new RouteAttribute("CoolRouteBro") } }
            };

            var routeProvider = new DirectRouteProvider(controllerRoutes, null);


            var request = new HttpRequestMessage(HttpMethod.Get, "http://localhost/DirectRouteProvider");

            var response = await SubmitRequestAsync(request, routeProvider);

            Assert.False(response.IsSuccessStatusCode);
            Assert.Equal(HttpStatusCode.NotFound, response.StatusCode);
        }
Exemplo n.º 5
0
        public void AttributeRouting_DirectRouteProvider_ControllerRoute()
        {
            var controllerRoutes = new Dictionary <Type, IEnumerable <IDirectRouteFactory> >()
            {
                { typeof(DirectRouteProviderController), new[] { new RouteAttribute("CoolRouteBro") } }
            };

            var routeProvider = new DirectRouteProvider(controllerRoutes, null);


            var request = new HttpRequestMessage(HttpMethod.Get, "http://localhost/CoolRouteBro");

            var response = SubmitRequest(request, routeProvider);

            Assert.True(response.IsSuccessStatusCode);
            Assert.Equal("DirectRouteProviderController.Get239303030()", GetContentValue <string>(response));
        }