3 回答

TA貢獻1820條經驗 獲得超2個贊
我認為對此的解釋相當簡單。
在第一種情況下,您在對象中明確設置isBodyHtml
為 true 。MailMessage
然后將MailMessage
對象傳遞給Send()
方法。因此,它會根據您的指示將電子郵件格式化為 HTML。
在第二種情況下,您無法告訴系統電子郵件的格式。純文本通常是默認格式,因此在沒有任何其他說明的情況下,我希望它會使用這種格式。
NB You claim isBodyHTML
was set to true 在這兩種情況下,但這沒有任何意義。在第二種情況下,您沒有將MailMessage
對象傳遞給方法...該IsBodyHtml
屬性屬于MailMessage
. 那么,您還可以如何以及在哪里設置這樣的值?
在第二種情況下,該方法獲取的唯一值是Send()
四個字符串(from
、to
和)。它不會收到有關電子郵件的任何其他信息。該屬性從未使用過,因為它是 un-used 的一部分。subject
body
isBodyHTML
MailMessage

TA貢獻1872條經驗 獲得超4個贊
IsBodyHTML
因為按照您的方式使用 Send 函數時,沒有指定set 為 true 。我認為IsBodyHTML
是在MailMessage
對象內。
我不完全確定IsBodyHTML
body 中設置了什么,但它可能會創建完整格式的 HTML (< html><head><body>etc....
),所以不妨試試看。

TA貢獻1811條經驗 獲得超6個贊
在內部對您不起作用的過載看起來或多或少像這樣
MailMessage mailMessage = new MailMessage(from, recipients, subject, body); Send(mailMessage);
它創建一個 MailMessage 實例,不設置 IsBodyHtml 并調用其他重載。IsBodyHtml 控制用于郵件正文 MimePart 的 MediaType,如果未設置 IsBodyHtml,將使用 PlainText 代替 Html MimePart。設置 IsBodyHtml 不會以任何方式更改 Body 屬性的內容,因此您必須使用 MailMessage 的重載,以便您可以顯式設置 IsBodyHtml。
- 3 回答
- 0 關注
- 166 瀏覽
添加回答
舉報