public static IReferenceTokenExchangeBuilder AddCaching <T>(this IReferenceTokenExchangeBuilder builder, ServiceLifetime lifetime) where T : class, ITokenExchangeCache { builder.Services.AddTransient <ICachingTokenExchangeService, TokenExchangeServiceWithCache>(); var service = new ServiceDescriptor(typeof(ITokenExchangeCache), typeof(T), lifetime); builder.Services.Add(service); return(builder); }
public static IReferenceTokenExchangeBuilder AddCaching(this IReferenceTokenExchangeBuilder builder) { AddCaching <InMemoryTokenExchangeCache>(builder, ServiceLifetime.Singleton); return(builder); }