Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Melampirkan Fail dari MemoryStream ke MailMessage dalam C#?
Apabila mengarang e-mel dalam C#, anda mungkin menghadapi keperluan untuk melampirkan fail. Secara tradisinya, fail disimpan pada cakera sebelum ditambahkan pada koleksi lampiran. Walau bagaimanapun, pendekatan ini memerlukan menyimpan fail ke cakera, yang boleh menjadi tidak cekap dan tidak diperlukan dalam senario tertentu.
Daripada menyimpan fail ke cakera, anda boleh menyimpannya dalam memori menggunakan MemoryStream. Teknik ini membolehkan anda melampirkan terus fail pada objek MailMessage tanpa langkah perantara.
Sampel kod berikut menunjukkan cara melampirkan fail daripada MemoryStream ke MailMessage:
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; System.Net.Mime.ContentType ct = new System.Net.Mime.ContentType(System.Net.Mime.MediaTypeNames.Text.Plain); System.Net.Mail.Attachment attach = new System.Net.Mail.Attachment(ms, ct); attach.ContentDisposition.FileName = "myFile.txt"; // I guess you know how to send email with an attachment // after sending email ms.Close();
Edit 1:
Anda boleh menentukan jenis fail lain dengan menggunakan System.Net.Mime.MimeTypeNames, seperti System.Net.Mime.MediaTypeNames.Application.Pdf.
Berdasarkan Jenis Mime, pastikan sambungan yang betul dinyatakan dalam FileName, contohnya, " myFile.pdf".
Atas ialah kandungan terperinci Bagaimana untuk Melampirkan Fail dari MemoryStream ke MailMessage dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!