public static void SendMailNotification() { // Get list receiver mail // foreach list receiver mail // Get content placeholder for each list mail // send mail DataTable listQueueMail = MailCatalog.GetQueueMailToBeSend(); if (listQueueMail != null) { var listHeader = MailConstructor.GetListHeaderMail(listQueueMail); foreach (var queue in listHeader) { var listContent = MailConstructor.GetListContentMail(listQueueMail, queue.MailId); string bodyMail = MailConstructor.ConstructBodyMail((string)queue.MailTemplate, (List <ContentMail>)listContent); SendingMail(MailConstructor.ConstructorMail((string)queue.AddressReceiver, (string)queue.MailSubject, bodyMail)); } MailHelper.DequeueMailList(listHeader); // Call method to update flag queue mail to be already send so it won't be send twice } }
public static void DequeueMailList(List <HeaderMail> queueMail) { XDocument detailsXmlQueueMail = ApplicationXmlGenerator.GenerateHeaderQueueMailToXml(queueMail); MailCatalog.DequequeMailList(detailsXmlQueueMail); }