Exemple #1
0
        //send async
        protected void sendMailAsync(EmailOut sendOutItem)
        {
            try
            {
                _smtpClient = new SmtpClient();
                _smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
                _smtpClient.Host = smtpServer;
                _smtpClient.Credentials = new System.Net.NetworkCredential(arEmailFromInfo[0]
                                                                                , arEmailFromInfo[1]);
                _smtpClient.Port = smtpPort;
                if (sslSecured== "yes")
                {
                    _smtpClient.EnableSsl = true;
                }
                else
                {
                    _smtpClient.EnableSsl = false;
                }

                _from = new MailAddress(arEmailFromInfo[0], "iBookStop");

                MailAddress _to = new MailAddress(sendOutItem.EmailTo);

                MailMessage _mailMessage = new MailMessage(_from, _to);

                _mailMessage.Subject = sendOutItem.EmailSubject;
                _mailMessage.Body = sendOutItem.EmailBody;
                _mailMessage.BodyEncoding = System.Text.Encoding.UTF8;
                _mailMessage.IsBodyHtml = true;
                _mailMessage.Priority = MailPriority.Normal;

                ////attach files to email
                //if (session["attachFiles"] != null)
                //{
                //    List<URLInfo> attachFileLst = (List<URLInfo>)session["attachFiles"];
                //    foreach (var item in attachFileLst)
                //    {
                //        Attachment data = new Attachment(item.dir, System.Net.Mime.MediaTypeNames.Application.Octet);
                //        _mailMessage.Attachments.Add(data);
                //    }
                //}

                sendOutItem.CreateTime = DateTime.Now.ToString();

                _smtpClient.SendAsync(_mailMessage, sendOutItem);

                _smtpClient.SendCompleted += new SendCompletedEventHandler(sendCompletedCallback);

            }
            catch (Exception ex)
            {
                sendOutItem.Status = 1;
                sendOutItem.Exception = ex.Message;
            }
        }
Exemple #2
0
        private void save2sentOutTable(EmailOut _model)
        {
            int _RowsEffect = 0;

                try
                {
                    string cmdText = "EmailOut_Update";

                    SqlParameter[] p = {
                                        new SqlParameter("@Id", SqlDbType.Int, 4),
                                        new SqlParameter("@EmailFrom", SqlDbType.NVarChar, 250),
                                        new SqlParameter("@EmailTo", SqlDbType.NVarChar, 250),
                                        new SqlParameter("@EmailSubject", SqlDbType.NVarChar, 250),
                                        new SqlParameter("@EmailBody", SqlDbType.NText),
                                        new SqlParameter("@Status", SqlDbType.Int, 4),
                                        new SqlParameter("@Exception", SqlDbType.NVarChar, 250),
                                        new SqlParameter("@CreateBy", SqlDbType.NVarChar, 250)
                                   };

                    p[0].Value = _model.Id;
                    p[0].Direction = ParameterDirection.InputOutput;

                    p[1].Value = _model.EmailFrom;
                    p[2].Value = _model.EmailTo;
                    p[3].Value = _model.EmailSubject;
                    p[4].Value = _model.EmailBody;
                    p[5].Value = _model.Status;
                    p[6].Value = _model.Exception;
                    p[7].Value = _model.CreateBy;

                    int rowEffect= db.ExcuteCommandReturnInt(cmdText, CommandType.StoredProcedure, p);

                    _RowsEffect = (int)p[0].Value;
                }
                catch (Exception ex)
                {
                    PTSLog.Error(ex.Message);
                }
        }
Exemple #3
0
        //send sync
        protected void sendMail(EmailOut snd)
        {
            try
            {
                MailAddress _to = new MailAddress(snd.EmailTo);

                MailMessage _mailMessage = new MailMessage(_from, _to);

                _mailMessage.Subject = snd.EmailSubject;
                _mailMessage.Body = snd.EmailBody;
                _mailMessage.IsBodyHtml = true;
                _mailMessage.Priority = MailPriority.Normal;

                _smtpClient.Send(_mailMessage);

                snd.Status = 0; //success

                snd.UpdateTime = DateTime.Now.ToString();
            }
            catch (SmtpFailedRecipientsException ex)
            {
                snd.Status = 1; //fail
                snd.Exception = ex.Message;
                //PTSLog.Error(ex.Message);
            }
            catch (SmtpFailedRecipientException ex)
            {
                snd.Status = 1; //fail
                snd.Exception = ex.Message;

                //PTSLog.Error(ex.Message);
            }
            catch (SmtpException ex)
            {
                snd.Status = 1; //fail
                snd.Exception = ex.Message;

            }
            catch (Exception ex)
            {
                snd.Status = 1; //fail
                snd.Exception = ex.Message;
            }
        }