2021年7月7日 星期三

[研究][ASP.NET] 未指定 SMTP 主機

[研究][ASP.NET] 未指定 SMTP 主機

2021-07-07


********************************************************************************

'/' 應用程式中發生伺服器錯誤。

未指定 SMTP 主機。

描述: 在執行目前 Web 要求的過程中發生未處理的例外狀況。請檢閱堆疊追蹤以取得錯誤的詳細資訊,以及在程式碼中產生的位置。

例外狀況詳細資訊: System.InvalidOperationException: 未指定 SMTP 主機。

原始程式錯誤:

行 185:                    // SendAsync Failed
行 186:                    //client.SendAsync(msg, userState);
行 187:                    client.Send(msg);
行 188:                    //MessageBox.Show("Send OK");
行 189:                    //Label_Message.Text = "寄出密碼快過期通知信成功";


原始程式檔: D:\Git\WebApplication1\WebApplication1Admin\WebApplication1Admin\Default.aspx.cs    行: 187

堆疊追蹤:

[InvalidOperationException: 未指定 SMTP 主機。]
   System.Net.Mail.SmtpClient.CheckHostAndPort() +2452739
   System.Net.Mail.SmtpClient.Send(MailMessage message) +300
   WebApplication1Admin.Default.SendMailUseGmail() in D:\Git\WebApplication1\WebApplication1Admin\WebApplication1Admin\Default.aspx.cs:187
WebApplication1Admin.Default.Page_Load(Object sender, EventArgs e) in D:\Git\WebApplication1\WebApplication1Admin\WebApplication1Admin\Default.aspx.cs:28
   System.Web.UI.Control.OnLoad(EventArgs e) +108
   System.Web.UI.Control.LoadRecursive() +90
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1533



版本資訊: Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.8.4330.0

********************************************************************************

解決

SmtpClient.Send 方法 (System.Net.Mail) | Microsoft Docs
https://docs.microsoft.com/zh-tw/dotnet/api/system.net.mail.smtpclient.send?view=net-5.0

把 SmtpClient client = new SmtpClient();

改成 SmtpClient client = new SmtpClient(server);    // server 要設 SMTP Server


先找到 client.Send(msg);

然後往上找,在

SmtpClient client = new SmtpClient();

之下增加

client.Host = "smtp.gmail.com"; //設定smtp Server

(完)


沒有留言:

張貼留言