我有一个项目,它利用 javax.mail.internet.MimeMessage 和其他相关类对我们收到的电子邮件进行 mime 解析。这需要移植到.NET。
我可以使用什么 .Net 3rd 方或内置库来替换我正在使用的 Java 类?
编辑:自从我问这个问题以来,过去 9 个月有什么变化吗?
我最近发布了MimeKit,它比任何其他开源 .NET MIME 解析器库都要强大得多,而且它的速度也快了几个数量级,因为它是一个实际的流解析器而不是递归下降字符串解析器(它还具有使用更少内存的额外好处)。
它完全支持 S/MIME v3.2(包括压缩,其他声称“完全”支持的库实际上都不支持)和 OpenPGP。
对于 SMTP、POP3 和 IMAP,您可以使用我的MailKit库,它支持一系列 SASL 身份验证机制,包括 XOAUTH2(由 Google 使用)。SMTP 客户端支持 PIPELINING,这可以提高发送邮件的性能,而 IMAP 客户端支持越来越多的扩展,这些扩展也允许客户端优化其带宽。
我没有使用 javax.mail.internet.MimeMessage,所以我不能说这两者的比较,但 .NET 2.0 及更高版本确实有一个System.Net.Mime命名空间,它可能对你有用。
否则,我很久以前就使用过Chilkat MIME .NET并且对它很满意。
SharpMimeTools,它是免费和开源的。
http://anmar.eu.org/projects/sharpmimetools/
这是我在我的应用程序BugTracker.NET中使用的,它非常可靠。
我也需要这样的图书馆。寻找一个 mime 处理库。我需要将邮件和附件转换为 PDF。
以下是我目前找到的一些库。开源库:
商业图书馆:
(会添加更多链接,但我的帐户级别阻止我这样做)
我还在整理这些,还没有尝试过。可能会从 SharpMime 开始,因为它是开源的。Mime4Net 在他们的网站上有一些例子。据我所知,这些都没有提供我需要的 PDF 转换,但我正在寻找其他库来完成这项任务。
我都使用过,并且同意 Ryan 的观点,即 System.Net.Mime 和同级命名空间提供了非常相似的功能。如果有的话,我想您会发现 .Net API 更干净且更易于使用。
您可以尝试我们的Rebex Secure Mail组件中包含的 S/MIME 库。
特点包括:
检查功能、MailMessage 教程和S/MIME 教程。您可以在www.rebex.net/secure-mail.net下载它
尝试使用Mail.dll IMAP 组件,它在市场上已经有一段时间了,并且经过了很好的测试。
using(Imap imap = new Imap())
{
imap.Connect("imapServer");
imap.UseBestLogin("user", "password");
imap.SelectInbox();
List<long> uids = imap.SearchFlag(Flag.Unseen);
foreach (long uid in uids)
{
byte[] eml = imap.GetMessageByUID(uid);
IMail message = new MailBuilder()
.CreateFromEml(eml);
Console.WriteLine(message.Subject);
}
imap.Close();
}
请注意,Mail.dll 是我创建的商业产品。
您可以在此处下载:http ://www.limlabs.com/mail 。