public List <int> GetProgramIDsByCampaign(int campaignID) { List <int> programIDs = new List <int>(); TreeNode campaign = new KenticoCampaignsProvider().GetCampaign(campaignID); if (campaign != null) { var programNodes = new TreeProvider(MembershipContext.AuthenticatedUser).SelectNodes(PageTypeClassName) .Where("CampaignID", QueryOperator.Equals, campaignID) .OnCurrentSite(); if (programNodes != null && programNodes.HasResults() && programNodes.TypedResult.Items.Count > 0) { programIDs = programNodes.TypedResult.Items.ToList().Select(x => x.GetIntegerValue("ProgramID", default(int))).ToList(); } } return(programIDs); }
public List <CampaignsProduct> GetCampaignsProductSKUIDs(int campaignID) { List <int> programIDs = new KenticoProgramsProvider().GetProgramIDsByCampaign(campaignID); var productNodes = new TreeProvider(MembershipContext.AuthenticatedUser).SelectNodes("KDA.CampaignsProduct") .WhereIn("ProgramID", programIDs) .OnCurrentSite(); if (productNodes != null && productNodes.HasResults() && productNodes.TypedResult.Items.Count > 0) { return(productNodes.TypedResult.Items.ToList().Select(x => { return new CampaignsProduct() { SKUID = x.NodeSKUID, ProductName = x.DocumentName, EstimatedPrice = x.GetValue <decimal>("EstimatedPrice", 0) }; }).ToList()); } else { return(new List <CampaignsProduct>()); } }