コード例 #1
0
        public static void CodeVerificationEmail(string token, string receiver, EmailMode mode)
        {
            string bodyDefault = "";
            string mailSubject = "";

            switch (mode)
            {
            case EmailMode.VERIFICATION:
                bodyDefault = "Your verification code is : ";
                mailSubject = "Teeleh Verification Code";
                break;

            case EmailMode.PASSWORD_RECOVERY:
                bodyDefault = "Your password recovery code is : ";
                mailSubject = "Teeleh Password Recovery";
                break;
            }

            string     body       = bodyDefault + token;
            SmtpClient smtpClient = new SmtpClient(ZohoMailHost);
            var        mail       = new MailMessage();

            mail.From = new MailAddress(ZohoMailAddress);
            mail.To.Add(receiver);
            mail.Subject              = mailSubject;
            mail.IsBodyHtml           = true;
            mail.Body                 = body;
            smtpClient.Port           = 587;
            smtpClient.Credentials    = new System.Net.NetworkCredential(ZohoMailAddress, ZohoMailPassword);
            smtpClient.EnableSsl      = true;
            smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
            smtpClient.Send(mail);
        }
コード例 #2
0
        public static Return Send(string fromEmailAddress, IEnumerable <MailAddress> emailAddresses, string subject, string body, EmailMode emailMode = EmailMode.Both, bool bcc = true)
        {
            Return returnObj = new Return();
            var    emailLog  = new EmailLog();

            if (emailMode == EmailMode.Both || emailMode == EmailMode.Smtp)
            {
                try
                {
                    MailMessage message = new MailMessage();

                    foreach (MailAddress address in emailAddresses)
                    {
                        if (bcc)
                        {
                            message.Bcc.Add(address);
                        }
                        else
                        {
                            message.To.Add(address);
                        }
                    }

                    message.Sender = new MailAddress(fromEmailAddress);

                    message.IsBodyHtml = true;
                    message.Subject    = subject;
                    message.Body       = body;

                    emailLog = GetEmailLogFromMailMessage(message);

                    System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();

                    client.Send(message);

                    emailLog.ServerMessage = "Successfully sent email";

                    EmailsMapper.Insert(emailLog);

                    return(returnObj);
                }
                catch (Exception ex)
                {
                    ErrorHelper.LogException(ex);

                    returnObj.Error = ErrorHelper.CreateError(ex);

                    emailLog.ServerMessage = returnObj.Error.Message;

                    EmailsMapper.Insert(emailLog);

                    if (emailMode == EmailMode.Both)
                    {
                        var directSentReturn = SendDirectMessage(fromEmailAddress, emailAddresses, subject, body, bcc);

                        if (directSentReturn.IsError)
                        {
                            return(directSentReturn);
                        }
                        else
                        {
                            returnObj = BaseMapper.GenerateReturn();
                        }
                    }

                    return(returnObj);
                }
            }
            else
            {
                return(SendDirectMessage(fromEmailAddress, emailAddresses, subject, body));
            }
        }
コード例 #3
0
 public static Return Send(string fromEmailAddress, MailAddress emailAddress, string subject, string body, EmailMode emailMode = EmailMode.Both, bool bcc = true)
 {
     return(Send(fromEmailAddress, new List <MailAddress>()
     {
         emailAddress
     }, subject, body, emailMode, bcc));
 }