0

アドレスを POST メソッドに戻します。そのアドレスにメールを送信したい:

 [HttpPost, ActionName("Index")]
    public ActionResult IndexPOST(SuppliersIndexVM allSuppliers)
    {
        MailMessage mail = new MailMessage();
        SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");

        mail.From = new MailAddress("martin.lagan@umac-solutions.co.uk");
        mail.To.Add("martin.lagan@umac-solutions.co.uk");
        mail.Subject = "Order";
        mail.Body = "I would like to order the following...";

        SmtpServer.Send(mail);

        return RedirectToAction("Index");
    }

最後の行からエラーが発生しています: SmptpServer.Sed(mail)...

SMTP サーバーが安全な接続を必要としているか、クライアントが認証されていません。サーバーの応答は次のとおりです。5.7.0 最初に STARTTLS コマンドを発行する必要があります。b20sm10938791wiw.4 - gsmtp

アイデアがあれば...また、送信しているメールにテーブルなどを追加するにはどうすればよいですか...乾杯

4

1 に答える 1

0

このエラーは、Gmail が SMTP サーバー経由で電子メールを送信できるようにする前に認証を要求することが原因であると考えられます。以下のコードを追加して、この問題を取り除くことができます。

SmtpServer.EnableSsl = true;
SmtpServer.DeliveryMethod = SmtpDeliveryMethod.Network;
SmtpServer.UseDefaultCredentials = false;
SmtpServer.Credentials = new System.Net.NetworkCredential("emailaddress","password");
于 2013-07-17T17:04:26.383 に答える