Email

From Bitnami MediaWiki
Jump to navigation Jump to search

How to send emails. Emails are sent out using the EmailHelper.cs class. Here is an example:

var firmContacts = await dbContext.FirmContact
  .AsNoTracking()
  .Where(contact => contact.FirmKey == 1
    && contact.Email != null
    && contact.Email != ""
    && contact.EmailTags.Contains("Foo")
  )
  .ToListAsync();
if (firmContacts.Count() == 0)
{
  return;
}

var emailFrom = await emailService.GetDoNotReplyEmailAddress();
if (string.IsNullOrWhiteSpace(emailFrom))
{
  return;
}

var emailTemplate = await emailTemplateService.GetByTemplateId("Foo");
if (emailTemplate == null)
{
  return;
}

var emailToList = EmailHelper.GetEmailList(firmContacts.Select(p => p.Email));

var templateData = new
{
  foo,
};
var stubble = new StubbleBuilder().Build();
var emailSubject = await stubble.RenderAsync(emailTemplate.Subject, templateData);
var emailBody = await stubble.RenderAsync(emailTemplate.Body, templateData);

//var exportReportResult = await reportService.ExportReport(model);
//var attachments = new List<Attachment>();
//attachments.Add(new Attachment(
//  exportFirmReportResult.Stream,
//  $"foo-bar-{DateTime.UtcNow.ToString("yyyyMMdd")}.pdf",
//  exportReportResult.ContentType
//  ));

EmailHelper.SendEmailWithAttachment(
  emailFrom,
  emailToList,
  null,
  null,
  emailSubject,
  emailBody,
  null/*attachments*/
  );

Test sending emails from Novus-Server by running e.g. curl -v -H 'Content-Type:application/json' -d '{"From":"donotreply@kiwanatechnologies.com","To":"albert.chan@visfuture.com,dgriffin@mayerglobal.com,hanika.dsouza@visfuture.com,tony.defeo@kiwanatechnologies.com","Subject":"Test email (NovusBackEnd)","Content":"Test email. Please ignore."}' https://novusapi.kiwanatechnologies.com/api/foo2/email.

Azure Functions resource. Currently, there’s no test method to test a test email from an Azure Functions resource in the Novus.AzureFunction project. We will have to create a new Azure function, perhaps one that uses a HTTP trigger.


Return to Programming Guide