将 MailMessage 对象持久化为 EM 或 MSG 文件
Save()
对象缺乏内置的 MailMessage
方法,在本地归档电子邮件时通常会带来挑战。 然而,有几种方法可以有效地解决这个限制。
利用 SmtpClient 的代答目录功能
SmtpClient
类通过其 DeliveryMethod
属性(特别是 SpecifiedPickupDirectory
)提供了灵活的解决方案。这允许您将电子邮件重定向到本地文件夹,而不是通过网络传输它们。 这有效地将 MailMessage
对象保存为文件:
<code class="language-csharp">SmtpClient client = new SmtpClient(); // Use empty constructor client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory; client.PickupDirectoryLocation = @"C:\somedirectory"; client.Send(message);</code>
或者,在应用程序的配置文件中配置此设置:
<code class="language-xml"><configuration> <system.net> <mailSettings> <smtp deliveryMethod="SpecifiedPickupDirectory"> <specifiedPickupDirectory pickupDirectoryLocation="C:\somedirectory"/> </smtp> </mailSettings> </system.net> </configuration></code>
执行Send()
操作后,电子邮件将作为电子邮件文件(通常为MSG或EML格式,具体取决于系统)存储在指定目录中。
重要提示: 建议使用 SmtpClient
的空构造函数,因为主机规范与本地文件存储无关。
以上是如何将 MailMessage 对象作为 EM 或 MSG 文件保存到磁盘?的详细内容。更多信息请关注PHP中文网其他相关文章!