2017-07-18 16 views
1

VS2017のC#コードに続いて、メールが正常に送信されたことが示されます。私はoutlookアカウントの送信ボックスから実際に電子メールが正常に送信されたことを確認できます。しかし、私のYahooアカウントでは、1時間以上経過しても電子メールはありません。 質問:私のコードには何かがありません - どうすればそれを動作させることができますか? 注::Outlookの送信ボックスでFromToの両方のメールアドレスが正しいことを確認しました。私はこれに続くTechnet articleです。MailKitは送信されたメールを表示しますが、受信しませんでした - .NET Core 1.1

static void Main(string[] args) 
{ 
    try 
    { 
     //From Address 
     string FromAddress = "[email protected]"; 
     string FromAdressTitle = "Email from ASP.NET Core 1.1"; 
     //To Address 
     string ToAddress = "[email protected]"; 
     string ToAdressTitle = "Microsoft ASP.NET Core"; 
     string Subject = "Hello World - Sending email using ASP.NET Core 1.1"; 
     string BodyContent = "ASP.NET Core was previously called ASP.NET 5. It was renamed in January 2016. It supports cross-platform frameworks (Windows, Linux, Mac) for building modern cloud-based internet-connected applications like IOT, web apps, and mobile back-end."; 

     //Smtp Server 
     string SmtpServer = "smtp.live.com"; 
     //Smtp Port Number 
     int SmtpPortNumber = 587; 

     var mimeMessage = new MimeMessage(); 
     mimeMessage.From.Add(new MailboxAddress(FromAdressTitle, FromAddress)); 
     mimeMessage.To.Add(new MailboxAddress(ToAdressTitle, ToAddress)); 
     mimeMessage.Subject = Subject; 
     mimeMessage.Body = new TextPart("plain") 
     { 
      Text = BodyContent 

     }; 

     using (var client = new SmtpClient()) 
     { 

      client.Connect(SmtpServer, SmtpPortNumber, false); 
      // Note: only needed if the SMTP server requires authentication 
      // Error 5.5.1 Authentication 
      client.Authenticate(FromAddress, "myFromEmailpassword"); 
      client.Send(mimeMessage); 
      Console.WriteLine("The mail has been sent successfully !!"); 
      Console.ReadLine(); 
      client.Disconnect(true); 

     } 
    } 
    catch (Exception ex) 
    { 
     throw ex; 
    } 
} 

答えて

1

最後に、1時間後、私はyahooアカウントでメールを受け取りました。なぜyahooのために1時間以上かかったのか分からないが、Outlookはすぐにそれを送った。助けようとしたかもしれないが、おそらくコードでエラーが見つからなかった人に感謝します。

観察:私が見ることができる受信メールに、To分野でToAdressTitleMicrosoft ASP.NET Coreとして(上記のコードから予想されるように)。しかし、Fromフィールドでは、しか表示されず、FromAdressTitleEmail from ASP.NET Core 1.1(上記のコードに示されています)と表示されません。なぜだろう?

+0

Yahooやその他のWebメールサーバーは、Fromヘッダーを書き換えることがあります。また、MailKitはYahooがメッセージを送信するのにかかる時間を制御していない。それは1時間もかかってはいけないが、Yahoo Mailが何をしているのか誰が知っているのだろうか? – jstedfast

関連する問題