c# - Asp.net中的Email Delivery Message(如何查看邮件是否发送?)

标签 c# asp.net email smtp

<分区>

protected void btnSend_Click(object sender, EventArgs e)
{
    string mFrom = "xxx.com";
    string mTo = "yyy.com";
   string msub="TESTSUBJECT";
    string mMsg="TEST msg";
    string mCc = "Test cc";

    // User credential used for sending mail
    string EmailSender = "xxx.com";
    string EmailSenderPasswd = "zzz";
    System.Net.NetworkCredential myCachet = new System.Net.NetworkCredential(EmailSender, EmailSenderPasswd);
    SmtpClient smtp = new SmtpClient("smtpout.secureserver.net", 12234);
    smtp.Credentials = myCachet;

    MailMessage message = new MailMessage(mFrom.ToString(), mTo.ToString());
    message.Subject = msub.ToString();
    message.Body = mMsg.ToString();
    message.IsBodyHtml = true;
    if (mCc.Trim() != String.Empty)
    {
        message.CC.Add(new MailAddress(mCc.ToString()));
    }
    smtp.Send(message);
    message.Dispose();
}

如果我传递了错误的密码,smtp.send(message) 方法会返回“Message failure”。但是,如果我传递了错误的电子邮件地址,它将作为成功消息返回为“Message Success”,并且即使我尝试 try catch 异常也不会传递任何异常。如何知道消息发送成功?如果该消息未成功传递,则意味着它应该抛出一条未传递的消息,如 gmail(Message delivery failed)。帮助我。

最佳答案

关于添加:

message.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;

投递通知邮件有效。但我必须在数据库中存储未送达的邮件详细信息。如何跟踪未送达的邮件(通过用户名)。

关于c# - Asp.net中的Email Delivery Message(如何查看邮件是否发送?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16767767/

相关文章:

c# - ASP.NET Identity CreateAsync 返回错误 "Name cannot be null or empty."

html - HTML电子邮件的所有CSS css都可以放在头部吗?

php - 使用 codeigniter 电子邮件类发送电子邮件

c# - 如何在 WPF Canvas 上绘制矩形

c# - 弄清楚如何摆脱 UITableView 单元格中单元格周围的边框

c# - 末尾带有 `this()` 的结构构造函数和另一个没有的结构构造函数有什么区别?

asp.net - 从 ASP.Net 代码隐藏触发 FancyBox

c# - 这个共享的 DbCommand 对象线程安全吗?

c# - 如何让控制台应用程序不断发送电子邮件?

c# - ASP.NET MVC5 路由到 View 上的 div