Exemple #1
0
        /// <summary>
        /// Save Error
        /// </summary>
        /// <param name="IPAddress">IPAddress</param>
        /// <param name="LogType">LogType</param>
        /// <param name="ModuleName">ModuleName</param>
        /// <param name="TrackTrace">TrackTrace</param>
        /// <param name="SystemErrorMesage">SystemErrorMesage</param>
        /// <param name="CustomErrorMessage">CustomErrorMessage</param>
        public void SaveError(string IPAddress, string LogType, string ModuleName, string TrackTrace, string SystemErrorMesage, string CustomErrorMessage)
        {
            try
            {
                ErrorLog error = new ErrorLog();
                error.CreatedAt          = DateTime.UtcNow;
                error.IPAddress          = IPAddress;
                error.CustomErrorMessage = CustomErrorMessage;
                error.LogType            = LogType;
                error.ModuleName         = ModuleName;
                error.SystemErrorMessage = SystemErrorMesage;
                error.TrackTrace         = TrackTrace;
                dataContext.ErrorLogs.Add(error);
                dataContext.SaveChanges();

                if (Convert.ToBoolean(_configuration["EnableSendErrorEmail"]) == true)
                {
                    EmailRequestErrorDTO emailrequest = new EmailRequestErrorDTO();
                    emailrequest.CC                 = _configuration["ErrorCC"];
                    emailrequest.To                 = _configuration["ErrorTo"];
                    emailrequest.IPAddress          = IPAddress;
                    emailrequest.CustomErrorMessage = CustomErrorMessage;
                    emailrequest.LogType            = LogType;
                    emailrequest.ModuleName         = ModuleName;
                    emailrequest.SystemErrorMesage  = SystemErrorMesage;
                    emailrequest.TrackTrace         = TrackTrace;
                    emailrequest.CreatedAt          = error.CreatedAt;
                    emailrequest.EmailTemplateName  = "ERRORLOGEMAIL";
                    EmailHelperError ehelper = new EmailHelperError(dataContext, _configuration);
                    ehelper.SendErrorMail(emailrequest);
                }
            }
            catch
            {
            }
        }
Exemple #2
0
        /// <summary>
        /// SendErrorMail
        /// </summary>
        /// <param name="emailRequest"></param>
        /// <returns></returns>
        public bool SendErrorMail(EmailRequestErrorDTO emailRequest)
        {
            try
            {
                SendEmailHelper objEmail = new SendEmailHelper();
                objEmail.HostName       = _configuration["HostName"];
                objEmail.Port           = Int32.Parse(_configuration["Port"]);
                objEmail.FromEmail      = _configuration["FromEmail"];
                objEmail.EnableSsl      = true;
                objEmail.DeliveryMethod = SmtpDeliveryMethod.Network;
                objEmail.Password       = _configuration["Password"];
                objEmail.UserName       = _configuration["UserNameData"];
                objEmail.TO             = emailRequest.To;
                if (emailRequest.CC != null)
                {
                    objEmail.CC = emailRequest.CC;
                }
                if (emailRequest.BCC != null)
                {
                    objEmail.BCC = emailRequest.BCC;
                }

                var emaiTemplate = dataContext.EmailTemplates.FirstOrDefault(x => x.EmailTemplateName == emailRequest.EmailTemplateName);
                if (emaiTemplate != null)
                {
                    objEmail.Subject = emaiTemplate.Subject;
                    string body = emaiTemplate.EmailBody;
                    if (emailRequest.IPAddress != null)
                    {
                        body = body.Replace("#IPAddress#", emailRequest.IPAddress);
                    }
                    if (emailRequest.LogType != null)
                    {
                        body = body.Replace("#LogType#", emailRequest.LogType);
                    }
                    if (emailRequest.CustomErrorMessage != null)
                    {
                        body = body.Replace("#CustomErrorMessage#", emailRequest.CustomErrorMessage);
                    }
                    if (emailRequest.ModuleName != null)
                    {
                        body = body.Replace("#ModuleName#", emailRequest.ModuleName);
                    }
                    if (emailRequest.TrackTrace != null)
                    {
                        body = body.Replace("#TrackTrace#", emailRequest.TrackTrace);
                    }
                    if (emailRequest.SystemErrorMesage != null)
                    {
                        body = body.Replace("#SystemErrorMesage#", emailRequest.SystemErrorMesage);
                    }
                    if (emailRequest.CreatedAt != null)
                    {
                        string currentDateString = String.Format("{0:MM-dd-yyyy}", emailRequest.CreatedAt);
                        body = body.Replace("#CreatedDate#", currentDateString);
                    }
                    body          = body.Replace("#Year#", DateTime.Now.Year.ToString());
                    objEmail.Body = body;
                    var mail = objEmail.SendEmail();
                    return(mail);
                }
                else
                {
                    return(false);
                }
            }
            catch
            {
                return(false);
            }
        }