From 0db1f1a42f474d369ec7fdbba8b0799618ea8b25 Mon Sep 17 00:00:00 2001 From: Hao Kung Date: Thu, 19 Mar 2015 21:02:35 -0700 Subject: [PATCH] React to hosting --- samples/RoutingSample.Web/Startup.cs | 10 +++--- .../RouterMiddleware.cs | 31 +++++++------------ src/Microsoft.AspNet.Routing/project.json | 2 +- .../RouterMiddlewareTest.cs | 8 ++--- .../project.json | 1 + 5 files changed, 23 insertions(+), 29 deletions(-) diff --git a/samples/RoutingSample.Web/Startup.cs b/samples/RoutingSample.Web/Startup.cs index 80594fb98f..561617411c 100644 --- a/samples/RoutingSample.Web/Startup.cs +++ b/samples/RoutingSample.Web/Startup.cs @@ -12,13 +12,13 @@ namespace RoutingSample.Web { public class Startup { + public void ConfigureServices(IServiceCollection services) + { + services.AddRouting(); + } + public void Configure(IApplicationBuilder builder) { - builder.UseServices(services => - { - services.AddRouting(); - }); - var endpoint1 = new DelegateRouteEndpoint(async (context) => await context .HttpContext diff --git a/src/Microsoft.AspNet.Routing/RouterMiddleware.cs b/src/Microsoft.AspNet.Routing/RouterMiddleware.cs index 545dc7491f..84d0f3d884 100644 --- a/src/Microsoft.AspNet.Routing/RouterMiddleware.cs +++ b/src/Microsoft.AspNet.Routing/RouterMiddleware.cs @@ -4,7 +4,6 @@ using System; using System.Threading.Tasks; using Microsoft.AspNet.Http; -using Microsoft.AspNet.RequestContainer; using Microsoft.AspNet.Routing; using Microsoft.AspNet.Routing.Logging; using Microsoft.AspNet.Routing.Logging.Internal; @@ -17,16 +16,13 @@ namespace Microsoft.AspNet.Builder private readonly ILogger _logger; private readonly RequestDelegate _next; private readonly IRouter _router; - private readonly IServiceProvider _services; public RouterMiddleware( RequestDelegate next, - IServiceProvider services, ILoggerFactory loggerFactory, IRouter router) { _next = next; - _services = services; _router = router; _logger = loggerFactory.CreateLogger(); @@ -34,24 +30,21 @@ namespace Microsoft.AspNet.Builder public async Task Invoke(HttpContext httpContext) { - using (RequestServicesContainer.EnsureRequestServices(httpContext, _services)) + using (_logger.BeginScope("RouterMiddleware.Invoke")) { - using (_logger.BeginScope("RouterMiddleware.Invoke")) + var context = new RouteContext(httpContext); + context.RouteData.Routers.Add(_router); + + await _router.RouteAsync(context); + + if (_logger.IsEnabled(LogLevel.Verbose)) { - var context = new RouteContext(httpContext); - context.RouteData.Routers.Add(_router); + _logger.WriteValues(new RouterMiddlewareInvokeValues() { Handled = context.IsHandled }); + } - await _router.RouteAsync(context); - - if (_logger.IsEnabled(LogLevel.Verbose)) - { - _logger.WriteValues(new RouterMiddlewareInvokeValues() { Handled = context.IsHandled }); - } - - if (!context.IsHandled) - { - await _next.Invoke(httpContext); - } + if (!context.IsHandled) + { + await _next.Invoke(httpContext); } } } diff --git a/src/Microsoft.AspNet.Routing/project.json b/src/Microsoft.AspNet.Routing/project.json index b6aeffd44e..d656508c1e 100644 --- a/src/Microsoft.AspNet.Routing/project.json +++ b/src/Microsoft.AspNet.Routing/project.json @@ -5,9 +5,9 @@ "warningsAsErrors": true }, "dependencies": { - "Microsoft.AspNet.RequestContainer": "1.0.0-*", "Microsoft.AspNet.Http.Extensions": "1.0.0-*", "Microsoft.Framework.Logging.Interfaces": "1.0.0-*", + "Microsoft.Framework.OptionsModel": "1.0.0-*", "Microsoft.Framework.NotNullAttribute.Internal": { "type": "build", "version": "1.0.0-*" } }, "frameworks": { diff --git a/test/Microsoft.AspNet.Routing.Tests/RouterMiddlewareTest.cs b/test/Microsoft.AspNet.Routing.Tests/RouterMiddlewareTest.cs index 90b9cd2c82..e217af91e3 100644 --- a/test/Microsoft.AspNet.Routing.Tests/RouterMiddlewareTest.cs +++ b/test/Microsoft.AspNet.Routing.Tests/RouterMiddlewareTest.cs @@ -34,7 +34,7 @@ namespace Microsoft.AspNet.Routing }; var router = new TestRouter(isHandled); - var middleware = new RouterMiddleware(next, httpContext.ApplicationServices, loggerFactory, router); + var middleware = new RouterMiddleware(next, loggerFactory, router); // Act await middleware.Invoke(httpContext); @@ -76,7 +76,7 @@ namespace Microsoft.AspNet.Routing }; var router = new TestRouter(isHandled); - var middleware = new RouterMiddleware(next, httpContext.ApplicationServices, loggerFactory, router); + var middleware = new RouterMiddleware(next, loggerFactory, router); // Act await middleware.Invoke(httpContext); @@ -112,7 +112,7 @@ namespace Microsoft.AspNet.Routing var router = new TestRouter(isHandled); - var middleware = new RouterMiddleware(next, httpContext.ApplicationServices, loggerFactory, router); + var middleware = new RouterMiddleware(next, loggerFactory, router); // Act await middleware.Invoke(httpContext); @@ -156,7 +156,7 @@ namespace Microsoft.AspNet.Routing }; var router = new TestRouter(isHandled); - var middleware = new RouterMiddleware(next, httpContext.ApplicationServices, loggerFactory, router); + var middleware = new RouterMiddleware(next, loggerFactory, router); // Act await middleware.Invoke(httpContext); diff --git a/test/Microsoft.AspNet.Routing.Tests/project.json b/test/Microsoft.AspNet.Routing.Tests/project.json index 7f2a56a82c..864c394878 100644 --- a/test/Microsoft.AspNet.Routing.Tests/project.json +++ b/test/Microsoft.AspNet.Routing.Tests/project.json @@ -6,6 +6,7 @@ "Microsoft.AspNet.Http.Core": "1.0.0-*", "Microsoft.AspNet.Routing": "1.0.0-*", "Microsoft.AspNet.Testing": "1.0.0-*", + "Microsoft.Framework.DependencyInjection": "1.0.0-*", "Microsoft.Framework.Logging.Testing": "1.0.0-*", "xunit.runner.aspnet": "2.0.0-aspnet-*" },