Markus Wolters - 2007-02-10

Hi everybody,

I've got this question, too, when I first read about this Sourceforge project. Admitted, it has been written originally as a alternative for System.WEB.Mail. But read further, why there are cases where you should even prefer this DotNetOpenMail library instead of the .Net thing. Please read also my thread about the performance of DotNetOpenMail.

System.Net.Mail is full of bugs... It's all about "Content-transfer-encoding". The implementation of "quoted-printable" is broken. First it's possible to create lines above 76 characters in length. That's against the RFC and it's also a criteria for some SPAM blockers to recognize those mails as SPAM. Also the class converts CRLF's to =0D=0A. It's not even against the RFC again, it's also very dirty to look at if you don't have a MIME-Client.

But now take this: if you're going to use TransferEncoding.SevenBit it's doing what it's supposing: "content-transfer-encoding: sevenbit". Again, this is not RFC standard, actually it's a big violating of the standard, and clients like AOL are getting totally out of line. And that's exactly how I got behind it: By AOL Webmail. Outlook Express seems to parse every email it gets and in case of those failures like "sevenbit" it does a "repair". So during my testcases I never saw a problem, because Outlook Express, which I used during these tests, always fixed these failures. It even renamed the boundarys. But the AOL client didn't do that. So I could finally saw the real raw email body of my testmails.

So for me, it's useless! And you even cannot get to fix it because all of those classes are sealed or internal or whatever! It just sucks...

Hopefully there're librarys outhere like DotNetOpenMail... I'm going to use it!

Let me add this at the end: After further investigation, I must admit, the performance and features (like SSL, every possible authentication implemented and so on) of System.Net.Mail are actually pretty good. So it's even more sad, that those little bugs at the end makes this .net library nearly useless, at least at this time. So I hope, that somebody at MS will quickly fix those things...