Ejemplo n.º 1
0
 //Builds initial order email and sends it
 public void SendEmail()
 {
     sender.Send(Email
                 .From(emailAddress: "*****@*****.**")
                 .To(emailAddress: recepient.Email, name: recepient.Last_Name + ", " + recepient.First_Name)
                 .Subject(subject: "Service Invoice")
                 .Body(body: "This is an email to inform you of a requested payment from Company A \n" + body)
                 );
 }
Ejemplo n.º 2
0
        private void btnSendAtOnce_Click(object Sender, RoutedEventArgs e)
        {
            // Извлекаем исходные параметры по возможности
            if (!(cbSenderSelect.SelectedItem is Sender sender))
            {
                return;
            }
            if (!(RecipientsList.SelectedItem is Recipient recipient))
            {
                return;
            }
            if (!(cbSmtpSelect.SelectedItem is Server server))
            {
                return;
            }
            if (!(MessagesList.SelectedItem is Message message))
            {
                return;
            }
            // Если одни из параметров невозможно получить, то выходим
            // Создаём объект-рассыльщик и заполняем параметры сервера
            var mail_sender = new SmtpSender(
                server.Address, server.Port, server.UseSSL,
                server.Login, server.Password);

            // При отправке почты может возникнуть проблема. Ставим перехват исключения.
            try
            {
                // Запускаем таймер
                var timer = Stopwatch.StartNew();
                // И запускаем процесс отправки почты
                mail_sender.Send(
                    sender.Address, recipient.Address,
                    message.Tittle, message.Body);
                timer.Stop(); // По завершении останавливаем таймер
                              // Если почта успешно отправлена, то отображаем диалоговое окно
                MessageBox.Show(
                    $"Почта успешно отправлена за {timer.Elapsed.TotalSeconds:0.##}c",
                    "Отправка почты",
                    MessageBoxButton.OK,
                    MessageBoxImage.Information);
            }
            // Если случилась ошибка, то перехватываем исключение
            catch (SmtpException) // Перехватывает строго нужное нам исключение!
            {
                MessageBox.Show(
                    "Ошибка при отправке почты",
                    "Отправка почты",
                    MessageBoxButton.OK,
                    MessageBoxImage.Error);
            }
        }
Ejemplo n.º 3
0
        private void ButtonSendNow_OnClick(object sender, RoutedEventArgs e)
        {
            if (!(ComboBoxSenders.SelectedItem is Sender sender_))
            {
                return;
            }
            if (!(DataGridRecirients.SelectedItem is Recipient recipient))
            {
                return;
            }
            if (!(ComboBoxServers.SelectedItem is Server server))
            {
                return;
            }
            if (!(ListBoxMessages.SelectedItem is Message message))
            {
                return;
            }

            if (string.IsNullOrEmpty(TextBoxMailMessage.Text))
            {
                MessageBox.Show("Письмо без текста нельзя отправить, пожалуйста заполните тело письма.", "Отмена отправки письма", MessageBoxButton.OK, MessageBoxImage.Stop);
                TabItemLetter.IsSelected = true;
                return;
            }

            var mailSender = new SmtpSender(server.Address, server.Port, server.UseSSL, server.Login, server.Password);

            try
            {
                var timer = Stopwatch.StartNew();
                mailSender.Send(sender_.Address, recipient.Address, message.Title, message.Body);
                timer.Stop();
                MessageBox.Show($"Почтовое сообщение успешно отправлено за {timer.Elapsed.TotalSeconds:0.##} секунд", "Отправка почты", MessageBoxButton.OK, MessageBoxImage.Information);
            }
            catch (Exception ex)
            {
                MessageBox.Show("Ошибка отправки почты!", "Отправка почты", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
Ejemplo n.º 4
0
        public SendResponse Send(IFluentEmail email, CancellationToken?token = null)
        {
            var smtpSender = new SmtpSender(_smtpClient);

            return(smtpSender.Send(email, token));
        }