private void buttonToPdf_Click(object sender, RoutedEventArgs e) { if (datePickerFrom.SelectedDate >= datePickerTo.SelectedDate) { MessageBox.Show("Дата начала должна быть меньше даты окончания", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } try { logic.SaveCosmeticsToPdfFile(new ReportBindingModelEmployee { FileName = "D:\\Otchet.pdf", DateFrom = datePickerFrom.SelectedDate, DateTo = datePickerTo.SelectedDate, EmployeeId = id }); MailLogic.MailSendAsync(new MailSendInfo { MailAddress = _employeeStorage.GetElement(new EmployeeBindingModel { Id = id })?.EMail, Subject = $"Отчет", Text = "Отчет по косметике за период c " + datePickerFrom.SelectedDate.Value.ToShortDateString() + " по " + datePickerTo.SelectedDate.Value.ToShortDateString(), File = "D:\\Otchet.pdf" }); MessageBox.Show("Сообщение отправлено", "Успех", MessageBoxButton.OK, MessageBoxImage.Information); } catch (Exception ex) { MessageBox.Show(ex.Message, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void buttonToPdf_Click(object sender, RoutedEventArgs e) { if (datePickerFrom.SelectedDate >= datePickerTo.SelectedDate) { MessageBox.Show("Дата начала должна быть меньше даты окончания", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (string.IsNullOrEmpty(TextBoxEmail.Text)) { MessageBox.Show("Заполните адрес электронной почты", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } MailMessage msg = new MailMessage(); SmtpClient client = new SmtpClient(); try { msg.Subject = "Отчет по косметике"; msg.Body = "Отчет по косметике за период c " + datePickerFrom.SelectedDate.Value.ToShortDateString() + " по " + datePickerTo.SelectedDate.Value.ToShortDateString(); msg.From = new MailAddress("*****@*****.**"); msg.To.Add(TextBoxEmail.Text); msg.IsBodyHtml = true; logic.SaveCosmeticsToPdfFile(new ReportBindingModel { FileName = "D:\\Otchet.pdf", DateFrom = datePickerFrom.SelectedDate, DateTo = datePickerTo.SelectedDate }); string file = "D:\\Otchet.pdf"; Attachment attach = new Attachment(file, MediaTypeNames.Application.Octet); ContentDisposition disposition = attach.ContentDisposition; disposition.CreationDate = System.IO.File.GetCreationTime(file); disposition.ModificationDate = System.IO.File.GetLastWriteTime(file); disposition.ReadDate = System.IO.File.GetLastAccessTime(file); msg.Attachments.Add(attach); client.Host = "smtp.gmail.com"; NetworkCredential basicauthenticationinfo = new NetworkCredential("*****@*****.**", "пароль"); client.Port = int.Parse("587"); client.EnableSsl = true; client.UseDefaultCredentials = false; client.Credentials = basicauthenticationinfo; client.DeliveryMethod = SmtpDeliveryMethod.Network; client.Send(msg); MessageBox.Show("Сообщение отправлено", "Успех", MessageBoxButton.OK, MessageBoxImage.Information); } catch (Exception ex) { MessageBox.Show(ex.Message, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); } }