public bool SendEmail(EmailDetails emailDetails, int type) { var message = new MimeMessage(); message.To.Add(new MailboxAddress(emailDetails.To.Name, emailDetails.To.Address)); message.From.Add(new MailboxAddress( "University of Cebu", "*****@*****.**")); message.Subject = "Welcome to University of Cebu!"; string content = string.Empty; if (type == (int)Enums.EmailType.VERIFICATIONCODE) { content = _emailTemplates.VerificationCode; } else if (type == (int)Enums.EmailType.RESETPASSWORD) { content = _emailTemplates.ResetPassword; } else if (type == (int)Enums.EmailType.OFFICIALENROLLMENT) { content = _emailTemplates.OfficialEnrolled; } foreach (var spefics in emailDetails.SpecificInfo) { content = content.Replace(spefics.Key, spefics.Value); message.Subject = message.Subject.Replace(spefics.Key, spefics.Value); } var bodyBuilder = GenerateBodyBuilder(content); message.Body = bodyBuilder.ToMessageBody(); //Be careful that the SmtpClient class is the one from Mailkit not the framework! using (var emailClient = new SmtpClient()) { //The last parameter here is to use SSL (Which you should!) emailClient.Connect(_emailConfiguration.SmtpServer, _emailConfiguration.SmtpPort, MailKit.Security.SecureSocketOptions.StartTls); //Remove any OAuth functionality as we won't be using it. emailClient.AuthenticationMechanisms.Remove("XOAUTH2"); emailClient.Authenticate(_emailConfiguration.SmtpUsername, _emailConfiguration.SmtpPassword); emailClient.Send(message); emailClient.Disconnect(true); } return(true); }
public bool SendResetPassword(EmailDetails emailDetails) { var message = new MimeMessage(); message.To.Add(new MailboxAddress(emailDetails.To.Name, emailDetails.To.Address)); message.From.Add(new MailboxAddress( "University of Cebu", "*****@*****.**")); message.Subject = "Welcome to University of Cebu!"; var content = _emailTemplates.ResetPassword; foreach (var spefics in emailDetails.SpecificInfo) { content = content.Replace(spefics.Key, spefics.Value); message.Subject = message.Subject.Replace(spefics.Key, spefics.Value); } var bodyBuilder = GenerateBodyBuilder(content); message.Body = bodyBuilder.ToMessageBody(); //Be careful that the SmtpClient class is the one from Mailkit not the framework! using (var emailClient = new SmtpClient()) { //The last parameter here is to use SSL (Which you should!) emailClient.Connect(_emailConfiguration.SmtpServer, _emailConfiguration.SmtpPort, MailKit.Security.SecureSocketOptions.StartTls); //Remove any OAuth functionality as we won't be using it. emailClient.AuthenticationMechanisms.Remove("XOAUTH2"); emailClient.Authenticate(_emailConfiguration.SmtpUsername, _emailConfiguration.SmtpPassword); emailClient.Send(message); emailClient.Disconnect(true); } return(true); }