Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Asp.net中的电子邮件传递消息(如何检查电子邮件是否已发送?)_C#_Asp.net_Email_Smtp - Fatal编程技术网

C# Asp.net中的电子邮件传递消息(如何检查电子邮件是否已发送?)

C# Asp.net中的电子邮件传递消息(如何检查电子邮件是否已发送?),c#,asp.net,email,smtp,C#,Asp.net,Email,Smtp,如果我传递了错误的密码,smtp.send(message)方法将返回“message failure”。但若im传递了错误的电子邮件地址,它会以“message success”(消息成功)的形式返回成功消息,即使我尝试捕获异常,它也不会传递任何异常。如何知道消息已成功传递?如果该消息未成功传递,则意味着它应该抛出一条未传递的消息,如gmail(消息传递失败)。帮助我。关于添加: protected void btnSend_Click(object sender, EventArgs e)

如果我传递了错误的密码,smtp.send(message)方法将返回“message failure”。但若im传递了错误的电子邮件地址,它会以“message success”(消息成功)的形式返回成功消息,即使我尝试捕获异常,它也不会传递任何异常。如何知道消息已成功传递?如果该消息未成功传递,则意味着它应该抛出一条未传递的消息,如gmail(消息传递失败)。帮助我。

关于添加:

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();
}

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

请参见stackoverflow[此处][1][1]中的类似问题:
message.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;