Heim  >  Artikel  >  Backend-Entwicklung  >  C#-Implementierungscode zum Senden und Empfangen von E-Mails

C#-Implementierungscode zum Senden und Empfangen von E-Mails

黄舟
黄舟Original
2016-12-22 13:49:132319Durchsuche

E-Mail senden
Methode 1: Verwenden Sie den System.Web.Mail-Namespace #region, um E-Mails zu senden: Diese Methode schlägt fehl

protected void SendFailed() 
{ 
System.Web.Mail.MailMessage mail = new System.Web.Mail.MailMessage(); 
mail.From = "test@ gmail.com"; 
mail.To = " test@ gmail.com "; 
mail.Subject = "For Test"; 
mail.Priority = System.Web.Mail.MailPriority.Normal; 
mail.BodyEncoding = Encoding.Default; 
mail.BodyFormat = MailFormat.Html; 
mail.Body = "this is a Email!<input type=&#39;button&#39; value=&#39;ok&#39;/>"; 
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1"); //basic authentication 
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "test"); //set your username here 
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "****"); //set your password here 
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", "smtp.gmail.com"); 
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "587"); 
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true"); 
SmtpMail.SmtpServer = "smtp.gmail.com"; 
SmtpMail.Send(mail); 
} 
#endregion间(此方法我测试没有成功过)

Methode 2: Verwenden Sie den System.Net.Mail-Namespace ( Diese Methode wurde erfolgreich getestet)
Ich verwende die Gmail-E-Mail-Adresse und sie bietet einen kostenlosen SMTP-Dienst. Ich habe mehrere E-Mail-Adressen erfolglos ausprobiert. Der SMTP-Dienst von Gmail muss SSL-verschlüsselt sein, bevor er erfolgreich überprüft werden kann.

#region 发送邮件:此方法可行 
protected void SendSuccess() 
{ 
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(); 
message.From = new MailAddress("test@gmail.com", "someone");//必须是提供smtp服务的邮件服务器 
message.To.Add(new MailAddress("test@yahoo.com.cn")); 
message.Subject = "测试邮件" ; 
message.CC.Add(new MailAddress("test@126.com")); 
message.Bcc.Add(new MailAddress("test@126.com")); 
message.IsBodyHtml = true; 
message.BodyEncoding = System.Text.Encoding.UTF8; 
message.Body = "邮件发送测试"; 
message.Priority = System.Net.Mail.MailPriority.High; 
SmtpClient client = new SmtpClient("smtp.gmail.com", 587); // 587;//Gmail使用的端口 
client.Credentials = new System.Net.NetworkCredential("test@gmail.com", "password"); //这里是申请的邮箱和密码 
client.EnableSsl = true; //必须经过ssl加密 
try 
{ 
client.Send(message); 
Response.Write("邮件已经成功发送到" + message.To.ToString() + "<br>"); 
} 
catch (Exception ee) 
{ 
Response.Write(ee.Message + "<br>" /* + ee.InnerException.Message*/ ); 
} 
} 
#endregion

E-Mail-Empfang
Ich verwende LumiSoft.Net, ein Open-Source-Projekt. Ich habe auch die Download-Adresse von einem Internetnutzer gesehen, und dann habe ich den Code selbst gelesen und einen einfachen Empfang geschrieben Verfahren. Verweisen Sie zunächst auf die DLL-Datei im Verzeichnis relrease im Code im Projekt.

using LumiSoft.Net.POP3.Client; 
using LumiSoft.Net.Mail; 
…… 
public IList<Mail_Message> ReceiveMail() 
{ 
IList<Mail_Message> mailList = new List<Mail_Message>(); 
using (POP3_Client client = new POP3_Client()) 
{ 
client.Connect("pop.gmail.com",995,true); 
client.Authenticate("zw.seaman", "zw_seaman", false); 
POP3_ClientMessageCollection coll = client.Messages; 
for (int i = 0; i < coll.Count; i++) 
{ 
POP3_ClientMessage message = coll[i]; 
Mail_Message mm = Mail_Message.ParseFromByte(coll[i].MessageToByte()); 
mailList.Add(mm); 
} 
} 
return mailList; 
} 
protected void Page_Load(object sender, EventArgs e) 
{ 
IList<Mail_Message> mailList = new ZMail.Mail().ReceiveMail(); 
foreach (Mail_Message mail in mailList) 
{ 
StringBuilder sb = new StringBuilder(); 
sb.Append(mail.From.ToString()).Append("  发送给  "); 
sb.Append(mail.To.ToString()).Append("<br/>") ; 
sb.Append(mail.Subject).Append("<br/>"); 
sb.Append(mail.BodyHtmlText).Append("<hr/>"); 
Response.Write(sb.ToString()); 
} 
}

Das Obige ist der Inhalt des C#-E-Mail-Sende- und Empfangs-Implementierungscodes. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn