public static T GetItem <T>(this ISitecoreService service, Item item, Action <GetItemByItemBuilder> config) where T : class { var builder = new GetItemByItemBuilder().Item(item); config(builder); return(service.GetItem <T>(builder)); }
public IEnumerable <IBasicTeam> GetTeams(ID hackathon) { GetItemByItemBuilder builder = new GetItemByItemBuilder(); Item hackathonItem = _context.SitecoreService.GetItem <Item>(hackathon.Guid); var teams = hackathonItem.Axes.GetDescendants().Where(t => t.Template.BaseTemplates.Any(b => b.ID == Hackathon.Feature.Teams.Constants.BasicTeam.TemplateId)); foreach (var teamItem in teams) { var itemBuilder = builder.Item(teamItem); yield return(_context.SitecoreService.GetItem <IBasicTeam>(itemBuilder)); } }