public ClaimsPrincipalMiddleware(RequestDelegate next, IContainerResolve container, ClaimsPrincipalMiddlewareOption option) { _next = next ?? throw new ArgumentNullException(nameof(next)); if (null == container) { throw new ArgumentNullException(nameof(container)); } if (null == option) { throw new ArgumentNullException(nameof(option)); } var logger = container.Resolve <ILogger <ClaimsPrincipalMiddleware> >(); if (!container.TryResolve <CacheContext>(out _cacheContext)) { logger.Technical().Information("No cache context is available.").Log(); } _option = option; _activitySource = container.Resolve <IActivitySourceFactory>()?.GetArc4u(); }
public static IApplicationBuilder UseCreatePrincipal(this IApplicationBuilder app, IContainerResolve container, ClaimsPrincipalMiddlewareOption option) { if (null == app) { throw new ArgumentNullException(nameof(app)); } if (null == container) { throw new ArgumentNullException(nameof(container)); } if (null == option) { throw new ArgumentNullException(nameof(option)); } return(app.UseMiddleware <ClaimsPrincipalMiddleware>(container, option)); }