Ejemplo n.º 1
0
        /// <summary>
        /// E-mail the comparison report to the user, then delete the comparison report. This method assumes that the comparison report is already written
        /// to the file pointed to by strReportFilePath
        /// </summary>
        private void SendEmail()
        {
            try
            {
                string strSubject = "";
                string strBody    = "";
                if (!comparisonData.Bulk)
                {
                    strSubject = "Forensic Comparison Report Started at " + comparisonData.ReportDate.ToString() + " is ready for viewing";
                    strBody    = "The Forensic Comparison Report of Hp: " + comparisonData.HpHead +
                                 " and Hd: " + comparisonData.HdHead + " is ready for viewing";
                }
                else
                {
                    strSubject = "Bulk Comparison Started at " + comparisonData.ReportDate.ToString() + " is ready for viewing";
                    strBody    = "The Bulk Comparison of Hp: " + comparisonData.HpHead +
                                 " and Hd: " + comparisonData.HdHead + " using " +
                                 comparisonData.BulkType.ToString() + " database is ready for viewing";
                }
                DataTable dtEmailId = bi.GetEmailId(comparisonData.UserName.ToString());
                using (MailMessage msg = new MailMessage())
                {
                    msg.From = new MailAddress(ConfigurationManager.AppSettings["FST_SERVICE_EMAIL_ADDRESS_FROM"], ConfigurationManager.AppSettings["FST_SERVICE_EMAIL_ADDRESS_NAME"]);
                    msg.To.Add(new MailAddress(dtEmailId.Rows[0]["Email"].ToString().Trim(), comparisonData.UserName.Trim()));

                    Attachment atchmt;

                    atchmt = new Attachment(strReportFilePath);

                    msg.Attachments.Add(atchmt);

                    msg.Subject = strSubject;
                    msg.Body    = strBody;
                    //SmtpClient client = new SmtpClient(ConfigurationManager.AppSettings["FST_SERVICE_EMAIL_SERVER"]);
                    SmtpClient client = new SmtpClient((ConfigurationManager.AppSettings["FST_SERVICE_EMAIL_SERVER"]), Convert.ToInt32(ConfigurationManager.AppSettings["FST_SERVICE_EMAIL_SERVER_PORT"]));
                    using (client)
                    {
                        client.DeliveryMethod = SmtpDeliveryMethod.Network;
                        string username = ConfigurationManager.AppSettings["FST_SERVICE_EMAIL_SERVER_USERNAME"];
                        string password = ConfigurationManager.AppSettings["FST_SERVICE_EMAIL_SERVER_PASSWORD"];
                        client.Credentials = new NetworkCredential(username, password);
                        //client.Credentials = new NetworkCredential("username","password");
                        client.Send(msg);
                    }
                }
                dtEmailId.Clear();
                dtEmailId.Dispose();

                File.Delete(strReportFilePath);
            }
            catch (Exception ex)
            {
                FSTService.CreateDailyLogEntry(ex.Message + Environment.NewLine + ex.StackTrace);
            }
        }