public PrismicService(ILogger <PrismicService> logger, IConfiguration configuration, IPrismicApiAccessor apiAccessor) { Logger = logger; ApiAccessor = apiAccessor; ApiUrl = configuration.GetSection("Prismic:Url").Value; shelfs = new Lazy <Task <List <Shelf> > >(async() => { var api = await GetApi(); var response = await api.Query(Predicates.At("document.type", "shelf")).PageSize(100).Submit(); return(response.Results.Select(x => x.ToShelf()).OrderBy(x => x.Order).ToList()); }); experiments = new Lazy <Task <List <Models.Experiment> > >(async() => { var api = await GetApi(); var response = await api.Query(Predicates.At("document.type", "experiment")).PageSize(100).Submit(); return(response.Results.Select(x => x.ToExperiment()).OrderBy(x => x.Order).ToList()); }); homepage = new Lazy <Task <Homepage> >(async() => { var api = await GetApi(); var response = await api.QueryFirst(Predicates.At("document.type", "homepage")); return(response.ToHomepage()); }); }
public PrismicService(ILogger <PrismicService> logger, IConfiguration configuration, IPrismicApiAccessor apiAccessor) { Logger = logger; ApiUrl = configuration.GetSection("Prismic:Url").Value; ApiAccessor = apiAccessor; }