2014-11-04 23 views
0

我正在使用.NET 4.0應用程序,它使用System.Web.Mail.SmtpMail類來發送我們生成的電子郵件,指定的BodyFormat爲MailFormat.Html.NET SmtpMail與.NET相比SmtpClient

這種方法的問題是,當我們生成電子郵件時(使用MailFormat.Html),協議似乎只允許每行76個字符。一旦超過這個限制,該行的其餘部分似乎被切斷,並在其位置上呈現感嘆號。

這對我們來說是有問題的,並且使代碼極難改進和重構。我注意到Visual Studio抱怨SmtpMail類已經過時,推薦的替代方法是System.Net.Mail.SmtpClient類。我一直在想,改變使用新的類是否會提供任何改進,特別是在任何單行上可以存在的字符數量方面 - 或者這是SMTP協議無法克服的問題。

文檔對於這兩個類都存在,但沒有描述類之間的差異以及這兩者之間的功能和行爲如何不同。

任何人都可以提供有關發送電子郵件的過時類和新類的區別以及是否有可能克服每行76個字符限制的建議。

謝謝

+0

從MSDN有關'System.Web.Mail'命名空間:'這個命名空間中的類已過時。使用System.Net.Mail命名空間替代' – jgauffin 2014-11-04 13:32:39

+0

這是如何重複的?我的問題包含關於API中字符限制的特定查詢,其他所謂的重複問題不回答此查詢。 – 2014-11-04 14:08:55

+0

另外一個涉嫌重複問題本身被標記爲其他參考問題之一的重複。 – 2014-11-04 14:16:37

回答

1

我可以從經驗告訴你,有使用System.Net.Mail沒有字符行限制。建議使用,System.Web.Mail已過時。前進的道路是明確的。

至於特定的API差異,System.Web.Mail是基於COM的,而System.Net.Mail是完全託管代碼。如果您想查看不同的功能/屬性名稱,則可以使用MSDN文檔。