Smtp реализация, выдает ошибку в консоли в чём может быть дело? - C#
Формулировка задачи:
System.Net.Mail.SmtpException: Время ожидания операции истекло.
в System.Net.Mail.SmtpClient.Send(MailMessage message)
в SendingMail.Program.SendMail() в c:\Users\User\Desktop\SendingMail\SendingM
ail\Program.cs:строка 58
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Mail;
using System.Web;
namespace SendingMail
{
class Program
{
static void Main(string[] args)
{
SendMail();
}
static void SendMail()
{
//smtp сервер
string smtpHost = "smtp.mail.ru";
//smtp порт
int smtpPort = 25;
//логин
string login = ".......@mail.ru";
//пароль
string pass = "************";
//создаем подключение
SmtpClient client = new SmtpClient(smtpHost, smtpPort);
client.Credentials = new NetworkCredential(login, pass);
//От кого письмо
string from = "..........@mail.ru";
//Кому письмо
string to = "............@yandex.ru";
//Тема письма
string subject = "Mail";
//Текст письма
string body = "Hello!";
//Вложение для письма
//Если нужно не одно вложение, для каждого создаем отдельный Attachment
//Attachment attData = new Attachment(@"D:\att.zip");
//Создаем сообщение
MailMessage mess = new MailMessage(from, to, subject, body);
//прикрепляем вложение
//mess.Attachments.Add(attData);
//прописываем заголовок
mess.SubjectEncoding = Encoding.Default;
mess.BodyEncoding = Encoding.Default;
mess.Headers["Content-type"] = "text/plain; charset=windows-1251";
try
{
client.Send(mess);
Console.WriteLine("Message send"); //СТРОКА 58
}
catch(Exception ex)
{
Console.WriteLine(ex.ToString());
Console.ReadKey();
}
}
}
}Решение задачи: «Smtp реализация, выдает ошибку в консоли в чём может быть дело?»
textual
Листинг программы
var mail = new MailMessage();
var smtpServer = new SmtpClient("smtp.mail.ru");
mail.From = new MailAddress("@mail.ru", "anonymous@none.com"); // от кого кому + скрытие
mail.To.Add("********@list.ru");
mail.Subject = "Test mail";
mail.Body = "Mail with attachment";
//var attachment = new Attachment("d:/****.txt");
//ail.Attachments.Add(attachment);
//Directory.GetFiles("send", "*.*").ToList().ForEach(name => mail.Attachments.Add(new Attachment(name, MediaTypeNames.Text.Plain)));//создаёте папку send в директории с exe файлом и в неё закидываете файлы
smtpServer.Port = 587; // порт аккаунт отправителя
smtpServer.Credentials = new NetworkCredential("****@mail.ru", "*******");
smtpServer.EnableSsl = true;
smtpServer.Send(mail);