將 .NET MailMessage 物件匯出到 .eml 或 .msg 檔案
.NET MailMessage 類別缺少直接將電子郵件資料儲存到磁碟的內建函數。 但是,我們可以使用替代方法來實現這一點。
利用 SmtpClient 和指定的取件目錄
SmtpClient
類別提供了一個解決方案:將電子郵件訊息定向到本地目錄而不是遠端伺服器。這是透過如下配置 SmtpClient
來完成的:
SmtpClient client = new SmtpClient("mysmtphost"); // Or use an empty constructor for local saving client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory; client.PickupDirectoryLocation = @"C:\somedirectory"; client.Send(message);
或者,可以在應用程式的設定檔中定義此設定:
<configuration> <system.net> <mailSettings> <smtp deliveryMethod="SpecifiedPickupDirectory"> <specifiedPickupDirectory pickupDirectoryLocation="C:\somedirectory"/> </smtp> </mailSettings> </system.net> </configuration>
執行Send
指令後,產生的電子郵件檔案將駐留在指定目錄中。
重要提示:對於本地文件創建,SmtpClient
的空構造函數可以簡化過程,因為不需要網路傳輸。
以上是如何將 .NET MailMessage 物件另存為 .eml 或 .msg 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!