Esempio n. 1
0
    public static void SendEmail(MailMessage message)
    {
        try
        {
            SimplicityCommLib.DataSets.Common.EmailQueueTableAdapters.EmailQueueTableAdapter ta = new SimplicityCommLib.DataSets.Common.EmailQueueTableAdapters.EmailQueueTableAdapter();
            string toEmails = "";
            string toNames = "";
            foreach(MailAddress address in message.To)
            {
                toNames += address.DisplayName + ",";
                toEmails += address.Address + ",";
            }
            //ta.Connection = new System.Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ShoppingCartConnectionString"].ConnectionString);
            ta.Insert(DateTime.Now, 1, "Simplicity4Business", FROM_ADDRESS, toNames.Substring(0, toNames.Length - 1), toEmails.Substring(0, toEmails.Length),
                message.Subject, message.Body, null);

        }
        catch (Exception ex)
        {

        }
    }
Esempio n. 2
0
        private void SendEmails(object state)
        {
            try
            {
                SmtpClient smtp = new SmtpClient(SMTP_SERVER);
                NetworkCredential userInfo = new NetworkCredential(USER_NAME, PASSWORD);
                smtp.UseDefaultCredentials = false;
                smtp.Credentials = userInfo;

                SimplicityCommLib.DataSets.Common.EmailQueueTableAdapters.EmailQueueTableAdapter emailQTA = new SimplicityCommLib.DataSets.Common.EmailQueueTableAdapters.EmailQueueTableAdapter();
                Log("Connection String:" + System.Configuration.ConfigurationSettings.AppSettings["DataAccessLayer.database.ConnectionString"],EventLogEntryType.Information);
                //emailQTA.Connection = new System.Data.SqlClient.SqlConnection(@"Data Source=270882-WEB2\SQLEXPRESS;Initial Catalog=shop;Integrated Security=False;User Id=sa;password=3400663");
                IEnumerator<SimplicityCommLib.DataSets.Common.EmailQueue.EmailQueueRow> ieEmails = emailQTA.GetRemaingQueue().GetEnumerator();
                while(ieEmails.MoveNext())
                {
                    try
                    {
                        MailMessage message = new MailMessage();
                        message.From = new MailAddress(ieEmails.Current.FromAddress, ieEmails.Current.FromName);
                        string[] toNames = ieEmails.Current.ToNames.Split(',');
                        string[] toAddresses = ieEmails.Current.ToAddresses.Split(',');
                        for (int index = 0; index < toAddresses.Length; index++)
                        {
                            if (toAddresses[index].Length > 0)
                            {
                                message.To.Add(new MailAddress(toAddresses[index], toNames[index]));
                            }
                        }
                        message.Subject = ieEmails.Current.Subject;
                        message.Body = ieEmails.Current.Body;
                        message.IsBodyHtml = true;
                        smtp.Send(message);
                        ieEmails.Current.SentTime = DateTime.Now;
                        emailQTA.Update(ieEmails.Current);

                        Log("Queue Id:" + ieEmails.Current.QueueId + " processed.", EventLogEntryType.Information);
                    }
                    catch (Exception ex)
                    {
                        Log("Queue Id:" + ieEmails.Current.QueueId + " errored.", EventLogEntryType.Error);
                        Log(ex.ToString(), EventLogEntryType.Error);
                    }
                }
                emailQTA.UpdateNumberOfTries();
            }
            catch (Exception ex)
            {
                //Log("Connection String:);
                Log(ex.ToString(), EventLogEntryType.Error);
            }
        }