2012-02-16 18 views
0

現在、私は自分のサイトのユーザー(ASP.NET、VS2010)に電子メールを送信しようとしていますが、現在Gmailを使用してメールを送信していますが、エラー:ASP.NETウェブアプリケーションを使用してメールを送信する際にエラーが発生しました

ex = {"Failure sending mail."} 
InnerException = {"The remote name could not be resolved: '[email protected]'"} 

それは私のコードです:

MailMessage mailObj = new MailMessage("[email protected]", "[email protected]", "test", "test2"); 
      SmtpClient SMTPServer = new SmtpClient("[email protected]"); 
      SMTPServer.Credentials = new System.Net.NetworkCredential("mygmailaccount", mygmailpassword); 
      try 
      { 
       SMTPServer.Send(mailObj); 
      } 
      catch (Exception ex) 
      { 
       string a = ex.Message; 
      } 

ここで間違って何が起こっていますか?私はweb.configで何かする必要がありますか?私自身のホストのsmtpサーバーを見つけるにはどうすればいいですか?

答えて

6

[email protected]が間違っています。あなたはおそらくsmtp.gmail.comを意味しました。完全な例については、次の質問を参照してください。正しく

Sending email in .NET through Gmail

+0

おかげで、私はエラー以下smtp.gmail.comにそれを変更しました:メッセージ=「SMTPサーバが安全な接続を必要としますか、クライアントは認証されていませんでした。サーバーの応答は5.7.0でした。最初にSTARTTLSコマンドを発行する必要がありますx22sm13327733bkw.11 " –

+0

このリンクの回答を見てください。解決策はすぐそこにあります。 SSLを有効にしてポート587で実行する必要があります –

+0

はい、ありがとう、それは素晴らしいことでした!私自身のホストから電子メールを送るつもりならどうしますか?どのように私はそのポートとsmtpを見つけることができますか? –

1

あなたが設定されていませんでしたGmailのパラメータ:

SmtpClient smtpClient = new SmtpClient("smtp.gmail.com", 587); 
    smtpClient.EnableSsl = true; 
    smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; 
    smtpClient.Credentials = new NetworkCredential("[email protected]", "password"); 
関連する問題