Как добавить список рассылки электронной почты на адрес, который был возвращен из набора данных с помощью sparkpost
Я пытаюсь добавить список массовой рассылки к адресам, чтобы я мог отправлять этот список массовой рассылки за раз. Здесь я сделал это, зацикливаясь на каждой записи, возвращаемой из моего набора данных. Есть ли лучший способ добавить этот общий набор данных в список адресов без зацикливания. Заранее спасибо. Вот мой код
DataSet ds = new DataSet();
List<string> to = new List<string>();
//I have returned one dataset containing list of emails to be send.
ds = email.GetBulkProcessMails("Process");
//here I am looping through every record in the dataset and adding that records to my List
if (ds.Tables.Count > 0)
{
foreach (DataRow dtrow in ds.Tables[0].Rows)
{
tomailscount bmscount = new tomailscount();
bmscount.destinationmails = dtrow["tomail_id"].ToString();
to.Add(bmscount.destinationmails.ToString());
}
}
//Here I am assigning that entire list to address and adding that recipient for transmission
for (int i = 0; i < to.Count; i++)
{
var recipient = new Recipient
{
Address = new Address { Email = to[i] }
};
transmission.Recipients.Add(recipient);
}
//Here I am sending that transmission
var sparky = new Client(ConfigurationManager.AppSettings["APIKey"]);
sparky.Transmissions.Send(transmission);
1 ответ
Вы можете удалить один цикл и просто сделать это:
if (ds.Tables.Count > 0)
{
foreach (DataRow dtrow in ds.Tables[0].Rows)
{
tomailscount bmscount = new tomailscount();
bmscount.destinationmails = dtrow["tomail_id"].ToString();
to.Add(bmscount.destinationmails.ToString());
transmission.Recipients.Add(new Recipient {
Address = new Address { Email = bmscount.destinationmails.ToString() }
});
}
// send it
var sparky = new Client(ConfigurationManager.AppSettings["APIKey"]);
sparky.Transmissions.Send(transmission);
}