React to hosting
This commit is contained in:
parent
37dc8581de
commit
0db1f1a42f
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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<RouterMiddleware>();
|
||||
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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": {
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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-*"
|
||||
},
|
||||
|
|
|
|||
Loading…
Reference in New Issue