2008-09-15 24 views
66

Ich überlege, ein Projekt zu konvertieren, das ich von .net 1.1 zu .net 2.0 geerbt habe. Die Hauptwarnung, die mich betrifft, ist, dass ich möchte, dass ich von System.Web.Mail auf System.Net.Mail umschalte..net: System.Web.Mail vs System.Net.Mail

Ich bin nicht bereit, alle Komponenten mit dem veralteten System.Web.Mail neu zu schreiben, also bin ich neugierig zu hören, wenn irgendwelche Community-Mitglieder Probleme hatten, es unter .net 2.0 zu verwenden?

Antwort

98

System.Web.Mail ist keine vollständige native .NET-Implementierung des SMTP-Protokolls. Stattdessen wird die bereits vorhandene COM-Funktionalität in CDONTS verwendet. System.Net.Mail hingegen ist eine vollständig verwaltete Implementierung eines SMTP-Clients.

Ich hatte viel weniger Probleme mit System.Net.Mail, da es COM Hölle vermeidet.

+8

System.Net.Mail ist auch vollständiger. Es unterstützt MIME ordnungsgemäß, so dass Sie formatierte HTML-Nachrichten mit eingebetteten Ressourcen wie Bildern erstellen können, ganz zu schweigen von alternativem Klartext für E-Mail-Clients. –

0

Ja, wir hatten das gleiche Problem, und wir entschieden uns auch nicht zu aktualisieren. Wir haben keine Probleme gesehen, also ist es in Ordnung, die Warnungen zu ignorieren.

4

Die paar Male, in denen ich in das hineingeraten bin, fand ich, dass die Methoden und Eigenschaften fast identisch waren - das Ändern des Objekttyps war einfach alles, was ich tun musste. Es gab ein oder zwei andere kleine Dinge, aber sie zeigten sich mit den Linien und es war offensichtlich, was mit Intellisense zu tun war. Ich würde dafür stimmen, dass ich mit der vollständig verwalteten Lösung so schnell wie möglich von CDONTs weggehe. Es ist nicht einmal auf 03 Server und neuer installiert.

4

System.Web.Mail ist veraltet, sollte aber trotzdem funktionieren. Sie werden genervt sein mit Warnungen darüber, dass es veraltet ist, aber die Funktionalität läuft noch ... vorerst.

Ich würde mit anderen zustimmen, dass die Konvertierung zu System.Net.Mail sehr trivial war. Ich bezweifle, dass du mehr als ein oder zwei Zeilen schreiben musst.

0

Ich implementiert sowohl für Dokumentation und Beispiele bieten hatte .netmail es am Anfang jetzt arbeitet ist erforderlich Benutzername und Passwort. Also gingen wir zurück zu Webmail, da es OK funktioniert.

7

Größtes Problem mit System.Net.Mail ist, dass es keine Unterstützung für implizites SSL bietet. Verwenden Sie System.Web.Mail, bis Sie keine implizite SSL-Unterstützung benötigen.