protected override async Task <HttpResponseMessage> SendAsync( HttpRequestMessage request, CancellationToken cancellationToken) { HttpRoute matchedRoute = configuration.Routes.GetRouteData(request); if (matchedRoute == null) { return(new HttpResponseMessage(HttpStatusCode.NotFound)); } #region Please dispose the request context after request processing /* * Please find a place to dispose the request context after request processing. */ try { request.SetRequestContext(configuration, matchedRoute); HttpResponseMessage response = await ControllerActionInvoker.InvokeAction(request); return(response); } catch (Exception) { return(new HttpResponseMessage(HttpStatusCode.InternalServerError)); } #endregion }
protected override async Task <HttpResponseMessage> SendAsync( HttpRequestMessage request, CancellationToken cancellationToken) { HttpRoute matchedRoute = configuration.Routes.GetRouteData(request); if (matchedRoute == null) { return(new HttpResponseMessage(HttpStatusCode.NotFound)); } HttpResponseMessage response = default(HttpResponseMessage); try { request.SetRequestContext(configuration, matchedRoute); response = await ControllerActionInvoker.InvokeAction(request); return(response); } catch (Exception) { return(new HttpResponseMessage(HttpStatusCode.InternalServerError)); } }
protected override Task <HttpResponseMessage> SendAsync( HttpRequestMessage request, CancellationToken cancellationToken) { HttpRoute route = Configuration.Routes.GetRouteData(request); return(Task.FromResult(route == null ? new HttpResponseMessage(HttpStatusCode.NotFound) : ControllerActionInvoker.InvokeAction(route, Configuration.CachedControllerTypes, Configuration.DependencyResolver, Configuration.ControllerFactory))); }
protected override async Task <HttpResponseMessage> SendAsync( HttpRequestMessage request, CancellationToken cancellationToken) { HttpRoute routeData = configuration.Routes.GetRouteData(request); if (routeData == null) { return(new HttpResponseMessage(HttpStatusCode.NotFound)); } return(ControllerActionInvoker.InvokeAction(routeData, configuration.CachedControllerTypes, configuration.DependencyResolver, configuration.ControllerFactory)); }
protected override Task <HttpResponseMessage> SendAsync( HttpRequestMessage request, CancellationToken cancellationToken) { var route = configuration.Routes.GetRouteData(request); if (route == null) { return(Task.FromResult(new HttpResponseMessage(HttpStatusCode.NotFound))); } return(Task.Run(() => ControllerActionInvoker.InvokeAction(route, configuration.CachedControllerTypes, configuration.DependencyResolver, configuration.ControllerFactory), cancellationToken)); }