2014-08-28 2 views
0

Просто я хочу отправить электронное письмо в мое приложение mvc aspnet. мой метод действия ниже:Не удается подключиться к удаленному серверу,

SmtpClient mailClient = new SmtpClient("127.0.0.1"); 
NetworkCredential cred = new NetworkCredential("my mail address", "my password"); 
mailClient.Credentials = cred; 
MailMessage contact = new MailMessage(); 
contact.From = new MailAddress("my mail address"); 
contact.Subject = "Subject"; 
contact.IsBodyHtml = true; 
contact.Body = "Body"; 
mailClient.EnableSsl = true; 
contact.To.Add("someone's mail address"); 
mailClient.Send(contact); 

Но когда я пытаюсь это я получил сообщение об ошибке вроде этого:

System.Net.Mail.SmtpException: { "Сбой отправки почты"}

Внутренняя Exception : {«Не удалось подключиться к удаленному серверу»}

Я искал похожие решения, но они говорят, что вам нужно установить учетные данные, но я уверен, что правильно установил учетные данные. Также брандмауэр Windows отключен. Спасибо заранее.

+2

Очевидный вопрос - вы бежите к SMTP-сервер на локальном компьютере? –

+1

Очевидный вопрос 2.0 - разрешено ли вам подключаться к SMTP-порту (25 или 2525 или 587)? Соединение может быть заблокировано брандмауэром или сервером SMTP. Кроме того, какой порт вы используете? Правильно ли это? – mg30rg

ответ

1

Прошу прощения, но ваши Исключения уже очень очевидны!

Кажется, что вы пытаетесь использовать его на сервере без SMTP. Установите один, и он должен работать тогда.

=>System.Net.Mail.SmtpException : {"Failure sending mail."}

Else просто проверить подключение/premission к серверу.

=>Inner Exception : {"Unable to connect to the remote server"}

+0

Это (сообщение об исключении) не обязательно означает, что у него нет настроенного SMTP-сервера. Это может означать, что SMTP-порт, который он пытается использовать, блокируется некоторым программным обеспечением, то есть брандмауэром. Это также может означать, что SMTP-сервер не прослушивает порт по умолчанию (25). Яркое решение будет пытаться подключиться через telnet, чтобы проверить, доступно ли соединение. – mg30rg

+0

ну, я не думал о попытке подключиться через telnet ... но он также не должен быть портом (25), как вы говорите! – user31911

+2

Я отключил ssl и установил корень 587 теперь он работает Спасибо :) – melomg

Смежные вопросы