public static IResponsiveBuilder AddCoreServices(this IResponsiveBuilder builder) { // Add core to services builder.Services.AddDetection(); return(builder); }
public static IResponsiveBuilder AddViewSubfolder(this IResponsiveBuilder builder) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(AddViewLocation(builder, ResponsiveViewLocationFormat.Subfolder)); }
private static IResponsiveBuilder AddViewLocation(this IResponsiveBuilder builder, ResponsiveViewLocationFormat format) { builder.Services.Configure <RazorViewEngineOptions>( options => { options.ViewLocationExpanders.Add(new ResponsiveViewLocationExpander(format)); }); return(builder); }
public static IResponsiveBuilder AddResponsiveService(this IResponsiveBuilder builder) { Check.NotNull(builder); builder.AddSessionServices(); builder.Services.TryAddTransient <IResponsiveService, ResponsiveService>(); builder.Services.AddRazorViewLocation(); builder.Services.AddRazorPagesConventions(); return(builder); }
public static IResponsiveBuilder AddRequiredPlatformServices(this IResponsiveBuilder builder) { Check.NotNull(builder); // Hosting doesn't add IHttpContextAccessor by default builder.Services.AddHttpContextAccessor(); // Add Detection Options builder.Services.AddOptions(); builder.Services.TryAddSingleton(provider => provider.GetRequiredService <IOptions <ResponsiveOptions> >().Value); return(builder); }
public static IResponsiveBuilder AddSessionServices(this IResponsiveBuilder builder) { // Add Session to services builder.Services.AddDistributedMemoryCache(); builder.Services.AddSession( options => { options.Cookie.Name = "Responsive"; options.IdleTimeout = TimeSpan.FromSeconds(10); options.Cookie.IsEssential = true; }); return(builder); }