什么.NET Mime解析库可用?


4

我有一个项目,它利用javax.mail.internet.MimeMessage和其他相关的类来解析我们收到的电子邮件。这需要移植到.NET。

什么.net第三方或内置库可以用来替换我正在使用的Java类?

编辑:自从我问这个问题后的最近9个月有什么变化?

7

我还没有使用javax.mail.internet.MimeMessage,所以我不能说这有什么比较,但.NET 2.0及更高版本确实有一个System.Net.Mime命名空间,这可能对您有用。

否则,很久以前我用了Chilkat MIME .NET,并对此感到满意。


2

我已经使用了两个,并与Ryan同意System.Net.Mime和sibling命名空间提供了非常类似的功能。如果有的话,我想你会发现.Net API更清洁,更易于使用。


6

SharpMimeTools,它是免费且开源的。

http://anmar.eu.org/projects/sharpmimetools/

这是我在我的应用程序,BugTracker.NET使用,它已经非常可靠。

  0

SharpMimeTools是一个伟大的库 18 6月. 102010-06-18 14:00:25


1

您可以尝试我们的Rebex Secure Mail组件中包含的S/MIME库。

特点包括:

  • 高电平API(MAILMESSAGE - 如在电子邮件客户端看到的)
  • 低电平API(访问MIME树)
  • 自动更正代码错位消息和产生的消息通过行为不端的邮件客户端
  • 阅读能力的TNEF(又名winmail.dat的由Outlook创建)
  • S/MIME:签名/加密/解密消息
  • 支持.NET和.NET CF

检查featuresMailMessage tutorialS/MIME tutorial。你可以下载它www.rebex.net/secure-mail.net


2

我也需要这样的图书馆。寻找一个mime处理库。我需要将消息和附件转换为PDF。
以下是我迄今为止发现的一些库。 开源库:

商业库:

  • Mime4Net
  • Rebex的
  • 奇尔卡特
  • 的Aspose - 最昂贵的选择,我看到的。

(会增加更多的联系,但我的帐户级别阻止我这样做)

我仍然通过这些分类,并没有尝试过一个呢。可能要从SharpMime开始,因为它是开源的。 Mime4Net在他们的网站上有一些例子。从我所看到的,这些都没有提供我需要的PDF转换,但是我正在寻找其他库来完成这项任务。

  0

为了记录,我最终使用了AspNetMime,它使用了xml许可证文件,并没有命中服务器来验证许可证。他们拥有我正在使用的开发者许可证,而且它的工作没有麻烦。我的应用程序已经使用了一年多,并且运行良好。 21 8月. 112011-08-21 02:34:35


0

尝试使用Mail.dll IMAP component,它在市场上有相当长的一段时间,并且经过了充分测试。

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.limilabs.com/mail


10

我最近发布了MimeKit,它比其他任何开源的.NET MIME解析器库都强壮得多,而且它的速度也快几个数量级,因为它是一个实际的流解析器,而不是一个递归下降字符串解析器(它还具有使用少量内存的附加好处)。

它完全支持S/MIME v3.2(包括压缩,其中没有任何声称支持“全部”支持的其他库)和OpenPGP。

对于SMTP,POP3和IMAP,您可以使用我的MailKit库,该库支持包括XOAUTH2(Google使用)在内的一堆SASL身份验证机制。 SMTP客户端支持PIPELINING,这可以提高发送邮件的性能,并且IMAP客户端支持越来越多的扩展,从而允许客户端优化带宽。