public static IServiceCollection AddUserIdSetter(this IServiceCollection services, IUserIdAccessor userIdAccessor, Action <UserIdFinderSettings> setupAction = null) { var userIdFinderSettings = new UserIdFinderSettings(); setupAction?.Invoke(userIdFinderSettings); services.TryAddSingleton(userIdFinderSettings); services.TryAddSingleton(userIdAccessor); return(services); }
public SetUserIdHeaderMiddleware(RequestDelegate next, IUserIdAccessor userIdAccessor, UserIdFinderSettings userIdFinderSettings) : base(next) { _userIdAccessor = userIdAccessor ?? throw new ArgumentNullException(nameof(userIdAccessor)); _userIdFinderSettings = userIdFinderSettings ?? throw new ArgumentNullException(nameof(userIdFinderSettings)); }