void GetRecipients() { Campaign campaign = new Campaign(campaignID); try { List<CampaignRecipient> recipients = new List<CampaignRecipient>(); PagedCollection<CampaignRecipient> firstPage = campaign.Recipients(1, 50, "email", "ASC"); recipients.AddRange(firstPage.Results); if (firstPage.NumberOfPages > 1) for (int pageNumber = 2; pageNumber <= firstPage.NumberOfPages; pageNumber++) { PagedCollection<CampaignRecipient> subsequentPage = campaign.Recipients(pageNumber, 50, "email", "ASC"); recipients.AddRange(subsequentPage.Results); } foreach (CampaignRecipient recipient in recipients) Console.WriteLine(recipient.EmailAddress); } catch (CreatesendException ex) { ErrorResult error = (ErrorResult)ex.Data["ErrorResult"]; Console.WriteLine(error.Code); Console.WriteLine(error.Message); } catch (Exception ex) { // handle some other failure } }
void GetActiveSubscribers() { List list = new List(listID); try { List<SubscriberDetail> allSubscribers = new List<SubscriberDetail>(); //get the first page, with an old date to signify entire list PagedCollection<SubscriberDetail> firstPage = list.Active(new DateTime(1900, 1, 1), 1, 50, "Email", "ASC"); allSubscribers.AddRange(firstPage.Results); if(firstPage.NumberOfPages > 1) for (int pageNumber = 2; pageNumber <= firstPage.NumberOfPages; pageNumber++) { PagedCollection<SubscriberDetail> subsequentPage = list.Active(new DateTime(1900, 1, 1), pageNumber, 50, "Email", "ASC"); allSubscribers.AddRange(subsequentPage.Results); } //we can now do whatever with every subscriber foreach(SubscriberDetail subscriberDetail in allSubscribers) Console.WriteLine(subscriberDetail.EmailAddress); } catch (CreatesendException ex) { ErrorResult error = (ErrorResult)ex.Data["ErrorResult"]; Console.WriteLine(error.Code); Console.WriteLine(error.Message); } catch (Exception ex) { //handle some other failure } }
public void GetActiveSubscribers() { List list = new List(auth, ListID); try { List<SubscriberDetail> allSubscribers = new List<SubscriberDetail>(); //get the first page, with an old date to signify entire list PagedCollection<SubscriberDetail> firstPage = list.Active(new DateTime(1900, 1, 1), 1, 50, "Email", "ASC"); allSubscribers.AddRange(firstPage.Results); if(firstPage.NumberOfPages > 1) for (int pageNumber = 2; pageNumber <= firstPage.NumberOfPages; pageNumber++) { PagedCollection<SubscriberDetail> subsequentPage = list.Active(new DateTime(1900, 1, 1), pageNumber, 50, "Email", "ASC"); allSubscribers.AddRange(subsequentPage.Results); } foreach(SubscriberDetail subscriberDetail in allSubscribers) Console.WriteLine(string.Format( "Subscriber with email address {0} reads mail with {1}.", subscriberDetail.EmailAddress, subscriberDetail.ReadsEmailWith)); } catch (CreatesendException ex) { ErrorResult error = (ErrorResult)ex.Data["ErrorResult"]; Console.WriteLine(error.Code); Console.WriteLine(error.Message); } catch (Exception ex) { // Handle some other failure Console.WriteLine(ex.ToString()); } }