2016-05-29 12 views
0

これまでのところ私が試したことですが、[email protected]などの形式のメールを学校のメールアカウントに送信したいと思います[email protected]。私はこれは私が見通しのためのSMTP設定を取ったので、Outlookのアカウントがあることを確信しているが、私はこれを行うとき、私は次のようなエラーに遭遇し続ける:outlookアカウントにメールを送信するASP.Net C#

Failure sending mail.

は、私がここで間違って何をしているのですか?私はすでにエラーを検索していますが、すべての回答がsmtp設定を除いて同じ構文を私と表示しています。だから、私のsmtpの設定には何か間違いがあります。

SmtpClient smtpClient = new SmtpClient("smtp-mail.outlook.com", 25); //587 
smtpClient.Credentials = new System.Net.NetworkCredential("[email protected]", "myPassword"); 
smtpClient.UseDefaultCredentials = true; 
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; 
smtpClient.EnableSsl = true; 

MailMessage mail = new MailMessage(); 


mail.From = new MailAddress("[email protected]", "CTMIS-no-reply"); 
mail.To.Add(new MailAddress("[email protected]")); 
mail.CC.Add(new MailAddress("[email protected]")); 
smtpClient.Send(mail); 

答えて

3

コードを機能させるためには、若干の変更が必要でした。あなたは

  • UseDefaultCredentialsは、資格情報を設定する前に偽に設定する必要がカスタムの資格情報を使用したいので、

    1. UseDefaultCredentialsはに設定する必要があります。
    2. OutlookのSSLポートは587です。

    ここにコードが修正されました。

    MSDNからUseDefaultCredentials

    に関する

    SmtpClient smtpClient = new SmtpClient("smtp-mail.outlook.com", 587); //587 
    smtpClient.UseDefaultCredentials = false; 
    smtpClient.Credentials = new System.Net.NetworkCredential("[email protected]", "myPassword"); 
    
    smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; 
    smtpClient.EnableSsl = true; 
    
    MailMessage mail = new MailMessage(); 
    mail.From = new MailAddress("[email protected]", "CTMIS-no-reply"); 
    mail.To.Add(new MailAddress("[email protected]")); 
    mail.CC.Add(new MailAddress("[email protected]")); 
    smtpClient.Send(mail); 
    

    一部のSMTPサーバはサーバが代わって電子メールを送信する前に、クライアントを認証することを要求します。 このSmtpClientオブジェクトがサーバーによって要求された場合、現在ログオンしているユーザーの既定の資格情報を使用してを認証する必要がある場合は、このプロパティをtrueに設定します。

    -

    あなたのWindows資格情報を使用して認証する必要はありませんので、 プロパティがFalseに設定されています。あなたがそれを前に置く必要があるという事実に関しては、私は正式な情報源を持っていませんが、そのプロパティをfalseに設定する前に資格を設定していれば、単に機能しません。

  • +0

    私は最初にお試しになります。クイックレスポンスのためにたくさんありがとう –

    +0

    私の問題はサーバーポートでした。それはポートに直接接触していません。しかし、多くのおかげで@ Sageの情報 –

    関連する問題