Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menyimpan Objek MelMessage ke Cakera sebagai Fail .eml atau .msg?
Objek MelMessage yang berterusan sebagai Fail .eml atau .msg
Selalunya, pembangun perlu menyimpan mesej e-mel yang diwakili oleh MailMessage
objek ke sistem fail. Malangnya, kelas MailMessage
tidak menyokong penyimpanan ke cakera secara langsung. Artikel ini membentangkan penyelesaian praktikal.
Penyelesaian: Memanfaatkan SmtpClient
Kuncinya ialah menggunakan kelas SmtpClient
. Dengan menetapkan sifat DeliveryMethod
nya kepada SmtpDeliveryMethod.SpecifiedPickupDirectory
, kami mengubah hala storan mesej e-mel ke folder setempat, dengan berkesan memintas penghantaran rangkaian.
Contoh Kod:
<code class="language-csharp">using System.Net.Mail; namespace EmailFileWriter { class Program { static void Main(string[] args) { // Initialize a MailMessage object. Content can be added as needed. MailMessage email = new MailMessage(); // Configure SmtpClient for local file storage. SmtpClient client = new SmtpClient(); client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory; client.PickupDirectoryLocation = @"C:\somedirectory"; // Specify your desired path // "Sending" the email saves it to the specified directory. client.Send(email); } } }</code>
Tatarajah Alternatif: App.config
Untuk fleksibiliti yang dipertingkatkan, konfigurasikan tetapan SmtpClient
dalam fail konfigurasi aplikasi anda (App.config
):
<code class="language-xml"><?xml version="1.0" encoding="utf-8"?> <configuration> <system.net> <mailSettings> <smtp deliveryMethod="SpecifiedPickupDirectory"> <specifiedPickupDirectory pickupDirectoryLocation="C:\somedirectory" /> </smtp> </mailSettings> </system.net> </configuration></code>
Kaedah ini menjana fail e-mel (.eml atau .msg, bergantung pada klien e-mel yang digunakan) dalam direktori yang ditetapkan semasa memanggil client.Send()
. Fail ini boleh diproses atau dihantar kemudian.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyimpan Objek MelMessage ke Cakera sebagai Fail .eml atau .msg?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!