Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Melampirkan Fail ke E-mel menggunakan MemoryStream dalam C#?

Bagaimana untuk Melampirkan Fail ke E-mel menggunakan MemoryStream dalam C#?

Mary-Kate Olsen
Lepaskan: 2025-01-02 16:06:39
asal
506 orang telah melayarinya

How to Attach Files to Emails using MemoryStream in C#?

Menggunakan MemoryStream untuk Melampirkan Fail pada MailMessage dalam C

Apabila mengarang e-mel, selalunya perlu melampirkan fail. Biasanya, pembangun menyimpan fail ke cakera menggunakan FileStream dan kemudian melampirkannya menggunakan kaedah MailMessage.Attachments.Add(). Walau bagaimanapun, pendekatan alternatif melibatkan penyimpanan fail dalam ingatan menggunakan MemoryStream dan menghantarnya terus ke objek Lampiran.

Penyelesaian

Untuk mencapainya, ikuti langkah yang digariskan dalam kod sampel di bawah:

// Create a MemoryStream and populate it with the file content
System.IO.MemoryStream ms = new System.IO.MemoryStream();
System.IO.StreamWriter writer = new System.IO.StreamWriter(ms);
writer.Write("Hello its my sample file");
writer.Flush();
writer.Dispose();
ms.Position = 0;

// Define the file type based on MIME type
System.Net.Mime.ContentType ct = new System.Net.Mime.ContentType(System.Net.Mime.MediaTypeNames.Text.Plain);
ct.Parameters.Add("name", "myFile.txt"); // Set the attachment filename, including extension

// Create an Attachment object from the MemoryStream
System.Net.Mail.Attachment attach = new System.Net.Mail.Attachment(ms, ct);

// Attach the file to the email message
mailMessage.Attachments.Add(attach);

// Send the email, assuming you have an existing `mailMessage` object
mailMessage.Send();

// Close the MemoryStream after sending the email
ms.Close();
Salin selepas log masuk

Penyesuaian

Bergantung pada jenis fail, anda boleh menentukan yang berbeza jenis MIME. Contohnya, untuk melampirkan fail PDF, gunakan System.Net.Mime.MediaTypeNames.Application.Pdf.

Pastikan bahawa sifat FileName objek Lampiran sepadan dengan jenis MIME yang ditentukan. Dalam contoh di atas, kami menentukan "myFile.txt" apabila menggunakan MediaTypeNames.Text.Jenis MIME biasa.

Atas ialah kandungan terperinci Bagaimana untuk Melampirkan Fail ke E-mel menggunakan MemoryStream dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan