一年前,Mitchel Sellers 有一个相关的问题……
我想访问 Google IMAP 以在我的自定义应用程序中发送和接收电子邮件。
关键是我不想使用任何第三方控件。
较新版本的 .Net Framework 支持 IMAP?我有什么选择?
IMAP 没有 .NET 框架支持。您需要使用一些第 3 方组件。
试试Mail.dll 电子邮件组件,它非常实惠且易于使用:
using(Imap imap = new Imap())
{
imap.Connect("imapServer");
imap.Login("user", "password");
imap.SelectInbox();
List<long> uids = imap.SearchFlag(Flag.Unseen);
foreach (long uid in uids)
{
string eml = imap.GetMessageByUID(uid);
IMail message = new MailBuilder()
.CreateFromEml(eml);
Console.WriteLine(message.Subject);
Console.WriteLine(message.TextDataString);
}
imap.Close(true);
}
您可以在此处下载:http: //www.lesnikowski.com/mail/。
当前版本的 .NET 中没有 IMAP 支持,我还没有听说任何计划将这种支持添加到框架中。您必须尝试第三方组件之一。
您可以查看我们的Rebex Secure Mail。
以下代码显示了如何从Inbox
文件夹下载消息:
// create client, connect and log in
Imap client = new Imap();
client.Connect("imap.example.org");
client.Login("username", "password");
// select folder
client.SelectFolder("Inbox");
// get message list
ImapMessageCollection list = client.GetMessageList(ImapListFields.Fast);
if (list.Count == 0)
{
Console.WriteLine("There are no messages in the mailbox.");
}
else
{
// download the first message
MailMessage message = client.GetMailMessage(list[0].SequenceNumber);
...
}
可以从www.rebex.net/secure-mail.net/下载试用版
您还可以享受Rebex Q&A 论坛,该论坛在与本网站类似的引擎上运行。