2
protected void Button1_Click(object sender, EventArgs e)
{
    try
    {
        SmtpClient sm = new SmtpClient();
        MailMessage ms = new MailMessage();
        ms.To.Add(new MailAddress(TextBox1 .Text ));
        ms.Subject = TextBox2.Text;
        ms.Body = TextBox3.Text;
        ms.IsBodyHtml = true;
        sm.Send(ms);
    }
    catch (Exception el)
    {
        Response.Write(el.Message);
    }
}
4

4 に答える 4

1

SmtpClient は、必要に応じて、SMTP サーバー アドレスと認証フィールドなど、web.config から構成を取得します。Send 行にブレークポイントを置き、sm オブジェクトの設定を調べ、SMTP パラメータが正しいことを確認し、このコードをテストしている場所からサーバーにアクセスできることを確認します。

于 2012-10-04T03:11:41.867 に答える
0

この問題は、SMTPサーバーに接続できない場合に発生するため、タイムアウトメッセージが表示されます。この問題が発生した理由はいくつかあります。

  • 間違ったSMTPアドレス
  • SMTPが拒否されました
  • SMTPサーバーがオフラインです
  • ポート設定
  • SSL構成
于 2012-10-04T03:34:57.253 に答える
0

接続設定を行う必要があります (GMail の例):

SmtpClient sm = new SmtpClient("smtp.gmail.com", 587);
sm.Credentials = new System.Net.NetworkCredential("abc@gmail.com", "password");
sm.EnableSsl = true;
于 2012-10-04T03:13:20.657 に答える
0

web.configこれをファイル に入力してください

<system.net>
            <mailSettings>
          <smtp from="yourEmailId@gmail.com">
            <network host="smtp.gmail.com" port="587" userName="yourEmailId@gmail.com" password="***** " defaultCredentials="false"/>
              </smtp>
            </mailSettings>
        </system.net>
于 2012-10-04T05:46:14.077 に答える