smtp Hotmail设置

时间:2015-08-13 09:47:37

标签: c# asp.net-mvc smtp

SmtpClient SmtpServer = new SmtpClient("smtp.live.com");
MailMessage mail = new 
MailMessage(txtEmail,"taqi.shemaz@hotmail.com",txtSubject,txtMessage);
SmtpServer.Port = 587;       
SmtpServer.Credentials = new System.Net.NetworkCredential("taqi.shemaz@hotmail.com", "******");
SmtpServer.EnableSsl = true;
SmtpServer.Send(mail);

此处txtEmail是发件人电子邮件地址,我需要通过电子邮件从我的收件箱中获取:

  

来自:Raj(Raj@yahoo.com)
  发送时间:2015年8月13日星期四下午1:32:36
  致:taqi.shemaz@hotmail.com

但问题是我从电子邮件收到电子邮件并发送电子邮件“taqi.shemaz@hotmail.com”

请帮我解决这个问题

1 个答案:

答案 0 :(得分:0)

您需要将"的地址与"分开。并将其作为第一个参数发送,如下所示:

SmtpClient SmtpServer = new SmtpClient("smtp.live.com");
MailMessage mail = new MailMessage("Raj@yahoo.com","taqi.shemaz@hotmail.com",txtSubject,txtMessage);
SmtpServer.Port = 587;
SmtpServer.Credentials = new System.Net.NetworkCredential("taqi.shemaz@hotmail.com", "******");
SmtpServer.EnableSsl = true;
SmtpServer.Send(mail);

分离可以通过对文本的各种操作来完成,甚至可能是微不足道的(如果文本总是采用上面提到的格式),就像这样:

        int startInd = txtEmail.IndexOf("(");
        int len = txtEmail.IndexOf(")") - txtEmail.IndexOf("(");
        string senderEmail = txtEmail.Substring(startInd, len);

如果您需要更多帮助,请与我们联系