如何知道收到电子邮件的时间

时间:2017-07-19 06:51:52

标签: c# email

我正在使用C#,我需要知道我的程序发送的电子邮件何时收到destinatary的收件箱文件夹。 这可能吗?

2 个答案:

答案 0 :(得分:0)

您可以尝试使用此代码

SmtpClient client = new SmtpClient();
            client.Port = 587;
            client.Host = "smtp.gmail.com";
            client.EnableSsl = true;
            client.Timeout = 10000;
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            client.UseDefaultCredentials = false;
            client.Credentials = new System.Net.NetworkCredential("Your Email Address", "Your Emaill Password");

            MailMessage mm = new MailMessage("Sender Email", "Reciver Email", "subject", "body");
            mm.BodyEncoding = UTF8Encoding.UTF8;
            mm.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;

            client.Send(mm);

答案 1 :(得分:0)

据我所知,我们无法验证邮件是否已到达收件人的收件箱。在最大值,我们可以验证发送的邮件是否已到达收件人的电子邮件服务器。电子邮件离开后,它就不再受您控制了。考虑一下,我从雅虎发送邮件到Gmail。在max,我可以验证邮件是否已发送到gmail服务器但不是用户收件箱。

对于SMS:以twilio服务为例,当您使用twilio服务向vodafone发送短信时,twilio会向vodafone(运营商)发送短信,如果运营商发送回复说,已发送消息(Vodafone服务器)则只有twilio可以将该状态发回给您,但有时甚至承运人也不会发送'发送'到twilio的状态所以它不能保证。

所以,简而言之,你无法做到。你无法确认邮件已经到达人们的收件箱。