HOWTO: Sending mail from AX using .NET Framework.
Sometimes happen that SysMailer class (using CDO) is not the right solution for sending mails with attachments. There is a little sample of X++ Job that is using System.Net.Mail namespace to achieve same.
static void JobNETSendMail(Args _args)
{
System.Net.Mail.MailMessage mailMessage;
System.Net.Mail.Attachment attachment;
System.Net.Mail.AttachmentCollection attachementCollection;
System.Net.Mail.SmtpClient smtpClient;
System.Net.Mail.MailAddress mailAddressFrom;
System.Net.Mail.MailAddress mailAddressTo;
str strBody;
str strSMTPServer;
str strFileName;
FileIOPermission perm;
;
// preparing parameters
mailAddressFrom = new System.Net.Mail.MailAddress("test@localmail.com", "");
mailAddressTo = new System.Net.Mail.MailAddress("admin@localmail.com","");
strBody = "There is a email body";
strSMTPServer = "MailServerName";
// preparing mail with body, subject, from, to.
mailMessage = new System.Net.Mail.MailMessage(mailAddressFrom, mailAddressTo);
mailmessage.set_Subject("There is a email subject");
mailmessage.set_Body(strBody);
attachementCollection = mailMessage.get_Attachments();
strFileName = "C:\\path\\filename";
// assert permision
perm = new FileIOPermission(strFileName,'w');
perm.assert();
// attaching file to that email.
attachment = new System.Net.Mail.Attachment(strFileName);
attachementCollection.Add(attachment);
smtpClient = new System.Net.Mail.SmtpClient(strSMTPServer);
smtpClient.Send(mailmessage);
// release permision
CodeAccessPermission::revertAssert();
}
Karel F
Comments
Anonymous
November 21, 2010
here is a great example of using the same logic and object to send email messages with attachments xplusplus.info/.../how-to-send-email-with-attachmentsAnonymous
April 28, 2011
Hi, Does anyone know how to send email to multiple recipients using the same .NET class? I tried to use the To property but it's not available in AX. I'm getting a syntax error if I use that. Any idea? Thanks, YH