SmtpClient "Запрос не выполнен; почтовый ящик недоступен" - PullRequest
0 голосов
/ 25 мая 2018

Я пытаюсь отправить и отправить электронное письмо с помощью SmtpClient на SMTP-сервере Yahoo

"smtp.mail.yahoo.com", 587

При первой попытке,Мне пришло электронное письмо с просьбой изменить настройки учетной записи, чтобы разрешить работу SMTP-запросов, но после этого почтовый ящик недоступен.

Метод SendMail:

public void SendMail(string name, string from, string to, string subject, string content)
    {
        try
        {
            using (var mail = new MailMessage())
            {
                const string email = @"mail@yahoo.com";
                const string pw = "***";

                var login = new NetworkCredential(email, pw);

                mail.From = new MailAddress(from);
                mail.To.Add(new MailAddress(to));
                mail.Subject = subject;
                mail.Body = content;
                mail.IsBodyHtml = true;

                try
                {
                    using (var client = new SmtpClient("smtp.mail.yahoo.com", 587))
                    {
                        client.EnableSsl = true;
                        client.DeliveryMethod = SmtpDeliveryMethod.Network;
                        client.UseDefaultCredentials = false;
                        client.Credentials = login;
                        client.Send(mail);
                    }
                }
                finally
                {
                    mail.Dispose();
                }
            }
        }
        catch(Exception ex)
        {

        }
    }

Действие:

[HttpPost]
    public ActionResult ContactSend(Mail mail)
    {
        if(ModelState.IsValid)
        {
            var toAdress = @"tomail@yahoo.de";
            var fromAdress = mail.Email;
            var subject = mail.Betreff;
            var name = mail.Name;
            var content = new StringBuilder();
            content.Append("Name: " + name + "\n");
            content.Append("Email: " + fromAdress + "\n\n");
            content.Append(mail.Content);

            SendMail(name, fromAdress, toAdress, subject, content.ToString());

        }

        return RedirectToAction("Kontakt", "Home");
    }

Проверены все данные для входа в систему, и, поскольку я впервые получил электронное письмо от Yahoo, они, похоже, работают.

Исключение:

  • Ответ {System.Web.HttpResponseWrapper} System.Web.HttpResponseBase {System.Web.HttpResponseWrapper}
  • ex {"Postfach nicht verfügbar. Ошибка войны Serverantwort: Запрос не выполнен; Почтовый ящик недоступен"} System.Exception {System.Net.Mail.SmtpException}
  • Data {System.Collections.ListDictionaryInternal} System.Collections.IDictionary {System.Collections.ListDictionaryInternal} HResult -2146233088 int HelpLink пустая строка
  • InnerException nВсе сообщения System.Exception "Postfach nicht verfügbar.Die Serverantwort war: запрос не выполнен;Почтовый ящик недоступен "string Source" System "string StackTrace" bei System.Net.Mail.MailCommand.CheckResponse (SmtpStatusCode statusCode, String response) \ r \ n bei System.Net.Mail.MailCommand.Send (команда SmtpConnection conn, команда Byte [], MailAddress from, Boolean allowUnicode) \ r \ n bei System.Net.Mail.SmtpTransport.SendMail (отправитель MailAddress, получатели MailAddressCollection, String deliveryNotify, логический allowUnicode, SmtpFailedRecipientException &ception) \ r \ n bei.t.Отправить (сообщение MailMessage) \ r \ n bei Makler.Controllers.HomeController.SendMail (имя строки, строка из, строка в, тема строки, содержимое строки) в C: \ Users \ Joshua \ source \ repos \ Makler \ Makler \ Controllers\ HomeController.cs: Zeile 90. "string StatusCode MailboxUnavailable System.Net.Mail.SmtpStatusCode
  • TargetSite {Void CheckResponse (System.Net.Mail.SmtpStatusCode, System.String)} System.Reflection.MethodBase.Reflection.RuntimeMethodInfo}
  • Статические члены
  • Non-Pubчлены лицензии
  • this {Makler.Controllers.HomeController} Makler.Controllers.HomeController

1 Ответ

0 голосов
/ 25 мая 2018

«Почтовый ящик недоступен» - это сообщение от почтового сервера Yahoo, но оно очень мало значит, за исключением того, что они не хотят с вами разговаривать.

Адрес «Кому:» может быть не заполнен или записанневерно, или им может не понравиться ваш IP-адрес или какая-либо из сотен других вещей.

Вы можете обратиться за помощью к yahoo postmaster и посмотреть, есть ли у них какие-либо предложения.

Вы успешно подключились, ноони отказались принять вашу почту.Вам нужна фактическая информация, чтобы знать почему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...