MailBee.NETObjects是一款为创建、发送、吸取以及处理惩罚电子邮件而计划的坚固、功能丰富的.NET控件。几行代码便可为应用程序添加E-Mail支持,简单高效。具备“必须”以及独特的功能,这些控件资助开辟职员简单快速地将复杂的电子邮件功能添加到他们的应用程序中。
MailBee.NETObjects先容和试用点击查察:https://www.evget.com/product/1496
本文重要先容了吸取电子邮件(POP3)的代码示例。如今MailBee.NETObjects在线订购享75折优惠正在举行中,欢迎您下载试用版举行运用!
要吸取简单的电子邮件,开辟职员应利用POP3对象。创建此对象的新实例,如下所示:
C#:
Pop3pop=newPop3();
VB.NET:DimpopAsPop3=NewPop3()
根本属性和方法
要吸取电子邮件,MailBee.NETObiects与POP3服务器通讯。要连接到POP3服务器,开辟职员只需指定此POP3服务器的主机名(或雷同的IP地点),如下所示:
C#:
pop.Connect("mail.domain.com");
VB.NET:pop.Connect("mail.domain.com")
大概
C#:
pop.Connect("127.0.0.1");
VB.NET:pop.Connect("127.0.0.1")
由于全部POP3服务器都必要身份验证,开辟职员应指定登录邮箱的登录名和暗码,如下所示:
C#:
pop.Login("login","password");
VB.NET:pop.Login("login","password")
当开辟职员乐成登录邮箱时,可以通过调用POP3对象的DownloadEntireMessage方法轻松下载此邮箱包罗的任何邮件。调用此方法时,开辟职员应指定邮件的索引。比方,以下代码行表现从收件箱下载末了一封邮件:
C#:
MailMessagemsg=pop.DownloadEntireMessage(pop.InboxMessageCount);
VB.NET:DimmsgAsMailMessage=pop.DownloadEntireMessage(pop.InboxMessageCount)
此中:
pop.InboxMessageCount是一个属性,包罗邮箱中存储的邮件总数;
msg是一个MailMessage对象,表现单个电子邮件。
留意!假如邮箱中没有邮件,则pop.InboxMessageCount属性为0并调用pop.DownloadEntireMessage(pop.InboxMessageCount)方法将出现错误。
假如要从邮箱下载中下载新邮件,开辟者必须界说特别的资助函数。该功能应该查找已经下载邮件的现有数据库中邮件的UID。假如没有找到指定的UID,则将该邮件视为新邮件。因此,开辟职员必须利用数据库引擎来存储全部吸取到的邮件UID。
末了,当邮箱完成全部须要的操纵,而且与POP3服务器的毗连无效时,开辟职员应该调用POP3对象的Disconnect方法以断开与POP3服务器的毗连,如下所示:
C#:
pop.Disconnect();
VB.NET:pop.Disconnect()
示例代码:
以下示例从指定的邮箱中下载最新的邮件,并表现此邮件的正文。
在利用MailBee.NETObjects之前,请确保它已解锁。
C#:
usingSystem;
usingMailBee;usingMailBee.Pop3Mail;usingMailBee.Mime;
namespaceEmailApp
{
classClass1{[STAThread]
staticboolIsNewMessage(stringUID)
{returntrue;}staticvoidMain(string[]args){Pop3pop=newPop3();
try
{pop.Connect("mail.domain.com");pop.Login("login","password");Console.WriteLine("Successfullyloggedin.");}catch(MailBeePop3LoginNegativeResponseException){Console.WriteLine("POP3serverrepliedwithanegativeresponseatlogin.");}
string[]arrIDs=pop.GetMessageUids();
intn=pop.InboxMessageCount;if(IsNewMessage(arrIDs[n])){MailMessagemsg=pop.DownloadEntireMessage(n);
if(msg.BodyHtmlText!="")
Console.WriteLine(msg.BodyHtmlText);elseif(msg.BodyPlainText!="")Console.WriteLine(msg.BodyPlainText);elseConsole.WriteLine("Thebodyofthismessageisempty.");}
try
{pop.Disconnect();Console.WriteLine("Disconnectedsuccessfully.");}
catch
{Console.WriteLine("Disconnectionfailed.");}}}}
VB.NET:ImportsSystemImportsMailBeeImportsMailBee.Pop3MailImportsMailBee.MimeNamespaceEmailAppClassClass1_SharedFunctionIsNewMessage(ByValUIDAsString)AsBooleanReturnTrueEndFunctionSharedSubMain(ByValargs()AsString)DimpopAsPop3=NewPop3()Trypop.Connect("mail.domain.com")pop.Login("login","password")Console.WriteLine("Successfullyloggedin.")CatchConsole.WriteLine("POP3serverrepliedwithanegativeresponseatlogin.")EndTryDimarrIDs()AsString=pop.GetMessageUids()DimnAsInteger=pop.InboxMessageCountIfIsNewMessage(arrIDs(n))ThenDimmsgAsMailMessage=pop.DownloadEntireMessage(n)Ifmsg.BodyHtmlText""ThenConsole.WriteLine(msg.BodyHtmlText)ElseIfmsg.BodyPlainText""ThenConsole.WriteLine(msg.BodyPlainText)ElseConsole.WriteLine("Thebodyofthismessageisempty.")EndIfEndIfEndIfTrypop.Disconnect()Console.WriteLine("Disconnectedsuccessfully.")CatchConsole.WriteLine("Disconnectionfailed.")EndTryEndSubEndClassEndNamespace
以上就是本次教程的全部内容,接下来会有更多相干教程,敬请关注!您也可以在批评者留下你的履历和发起。
我要评论