Создание правельной функции - C#

Узнай цену своей работы

Формулировка задачи:

Добрый вечер! Написал программу для отправки е-почты. Всем доволен, всё работает. Функционал: 1) Отправка н-ое кол-во писем одному пользавателю.
Листинг программы
  1. SmtpClient client = new SmtpClient(smtpComboBox.GetItemText(smtpComboBox.SelectedItem), Convert.ToInt32(portTXT.Text));
  2. client.Credentials = new System.Net.NetworkCredential(emailTXT.Text, passwordTXT.Text);
  3. MailMessage mail = new MailMessage();
  4. mail.From = new MailAddress(emailTXT.Text);
  5. mail.Subject = subjectTXT.Text;
  6. mail.Body = bodyTXT.Text;
  7. client.EnableSsl = true;
  8. for (int i = 0; i < amountUpDown.Value; i++)
  9. {
  10. client.Send(mail);
  11. }
2) отправка н-ое кол-во писем н-ому кол-ву получателей.
Листинг программы
  1. SmtpClient client = new SmtpClient(smtpComboBox.GetItemText(smtpComboBox.SelectedItem), Convert.ToInt32(portTXT.Text));
  2. client.Credentials = new System.Net.NetworkCredential(emailTXT.Text, passwordTXT.Text);
  3. MailMessage mail = new MailMessage();
  4. mail.From = new MailAddress(emailTXT.Text);
  5. mail.Subject = subjectTXT.Text;
  6. mail.Body = bodyTXT.Text;
  7. client.EnableSsl = true;
  8. for (int i = 0; i < emailList.Length; i++)
  9. {
  10. mail.To.Add(new MailAddress(emailList[i].ToString()));
  11. for (int o = 0; o < amountUpDown.Value; o++)
  12. {
  13. client.Send(mail);
  14. }
  15. mail.To.Remove(new MailAddress(emailList[i].ToString()));
  16. }
В связи лени и спортивного интереса не хочу использовать один и тот же код два раза, битый день не могу додуматься как из этх примеров зделать один чтобы подходил под оба случая? Проблема во внешнем цикле... подскажите пожалуйста как это правильно слепить?

Решение задачи: «Создание правельной функции»

textual
Листинг программы
  1. public void SendEmails(string smtp, int port, string email, string password,
  2.  string subject, string body, int ammountOfPeople, int ammountOfEmails  )
  3. {
  4.     SmtpClient client = new SmtpClient(smtp, port);
  5.     client.Credentials = new System.Net.NetworkCredentials(email, password);
  6.     MailMessage mailer = new MailMessage();
  7.     mailer.From = new MailAdress(email);
  8.     mailer.Subject = subject;
  9.     mailer.Body = body;
  10.     client.EnableSsl = true;
  11.     for (int secondCounter = 0; secondCounter < ammountOfPeople; secondCounter++)
  12.     {
  13.         mailer.To.Add(new MailAdress(emailTo));
  14.         for (int firstCounter = 0; firstCounter < ammountOfEmails; firstCounter++)
  15.         {
  16.             client.Send(mailer);
  17.         }
  18.         mailer.To.Remove(new MailAdress(ammountOfPeople[ammountOfPeople].toString()));
  19.     }
  20. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.455 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы