public ILarsSearchCriteria GetLarsSearchCriteria( LarsSearchRequestModel larsSearchRequestModel, int currentPageNo, int itemsPerPage, IEnumerable <LarsSearchFacet> facets = null) { Throw.IfNull(larsSearchRequestModel, nameof(larsSearchRequestModel)); Throw.IfLessThan(1, currentPageNo, nameof(currentPageNo)); Throw.IfLessThan(1, itemsPerPage, nameof(itemsPerPage)); var sb = new StringBuilder(); sb = BuildUpFilterStringBuilder(sb, "NotionalNVQLevelv2", larsSearchRequestModel.NotionalNVQLevelv2Filter); sb = BuildUpFilterStringBuilder(sb, "AwardOrgCode", larsSearchRequestModel.AwardOrgCodeFilter); var skip = currentPageNo == 1 ? 0 : itemsPerPage * (currentPageNo - 1); var criteria = new LarsSearchCriteria( FormatSearchTerm(larsSearchRequestModel.SearchTerm), itemsPerPage, skip, new LarsSearchFilterBuilder(sb).Build(), facets); return(criteria); }
private static async Task <IResult <ILarsSearchResult> > GetLarsData(ServiceProvider serviceProvider) { var searchCriteria = new LarsSearchCriteria("business", 10, 20, null, new[] { LarsSearchFacet.AwardOrgCode, LarsSearchFacet.NotionalNVQLevelv2 }); var serv = serviceProvider.GetService <ILarsSearchService>(); var result = await serv.SearchAsync(searchCriteria); return(result); }