การทำงานกับไฟล์แนบและวัตถุฝัง
การจัดการไฟล์แนบอีเมล
ไฟล์แนบอีเมลคือไฟล์คอมพิวเตอร์ที่ส่งพร้อมกับข้อความอีเมล ไฟล์อาจถูกส่งเป็นข้อความแยกต่างหากหรือเป็นส่วนของข้อความที่แนบอยู่ คลาส Attachment ใช้ร่วมกับคลาส MailMessage ทุกข้อความมีส่วน body นอกจาก body แล้ว คุณอาจต้องการส่งไฟล์เพิ่มเติม ไฟล์เหล่านี้ส่งเป็นไฟล์แนบและเป็นอินสแตนซ์ของคลาส Attachment คุณสามารถส่งไฟล์แนบได้จำนวนเท่าใดก็ได้ แต่ขนาดไฟล์แนบจำกัดโดยเซิร์ฟเวอร์อีเมล ตัวอย่างเช่น Gmail ไม่รองรับไฟล์ขนาดเกิน 10 MB.
ลองใช้ดู!
เพิ่มหรือลบไฟล์แนบอีเมลออนไลน์ด้วยบริการฟรี แอป Aspose.Email Editor.
การเพิ่มไฟล์แนบ
เพื่อแนบไฟล์แนบไปยังอีเมล โปรดทำตามขั้นตอนต่อไปนี้:
- สร้างอินสแตนซ์ของคลาส MailMessage.
- สร้างอินสแตนซ์ของคลาส Attachment.
- โหลดไฟล์แนบเข้าสู่อินสแตนซ์ Attachment
- เพิ่มอินสแตนซ์ Attachment เข้าไปในอินสแตนซ์ของคลาส MailMessage.
โค้ดสแนปเป็ทต่อไปนี้แสดงวิธีการเพิ่มไฟล์แนบไปยังอีเมล.
ด้านบนเราได้อธิบายวิธีเพิ่มไฟล์แนบในข้อความอีเมลของคุณด้วย Aspose.Email ส่วนต่อไปนี้จะแสดงวิธีลบไฟล์แนบและแสดงข้อมูลเกี่ยวกับไฟล์แนบบนหน้าจอ.
การลบไฟล์แนบ
เพื่อทำการลบไฟล์แนบ ให้ทำตามขั้นตอนด้านล่าง:
- สร้างอินสแตนซ์ของคลาส Attachment.
- โหลดไฟล์แนบในอินสแตนซ์ของคลาส Attachment.
- เพิ่มไฟล์แนบให้กับอินสแตนซ์ของคลาส MailMessage.
- ลบไฟล์แนบจากอินสแตนซ์ของคลาส Attachment โดยใช้อินสแตนซ์ของคลาส MailMessage.
โค้ดสแนปเป็ทต่อไปนี้แสดงวิธีการลบไฟล์แนบ.
การแสดงชื่อไฟล์แนบ
เพื่อแสดงชื่อไฟล์แนบ ให้ทำตามขั้นตอนต่อไปนี้:
- วนลูปผ่านไฟล์แนบในข้อความอีเมลและ
- บันทึกไฟล์แนบแต่ละไฟล์.
- แสดงชื่อของแต่ละไฟล์แนบบนหน้าจอ.
โค้ดสแนปเป็ทต่อไปนี้แสดงวิธีการแสดงชื่อไฟล์แนบบนหน้าจอ.
การดึงไฟล์แนบจากอีเมล
หัวข้อนี้อธิบายวิธีดึงไฟล์แนบจากไฟล์อีเมล ไฟล์แนบของอีเมลคือไฟล์คอมพิวเตอร์ที่ส่งพร้อมกับข้อความอีเมล ไฟล์อาจถูกส่งเป็นข้อความแยกหรือเป็นส่วนหนึ่งของข้อความที่แนบไปกับมัน ทุกข้อความอีเมลจะมีส่วนเนื้อหา (body) นอกจากส่วนเนื้อหาแล้ว คุณอาจต้องการส่งไฟล์เพิ่มเติม ซึ่งจะถูกส่งเป็นไฟล์แนบและแสดงเป็นอินสแตนซ์ของคลาส Attachment คลาส Attachment ใช้ร่วมกับคลาส MailMessage เพื่อทำงานกับไฟล์แนบ เพื่อดึงไฟล์แนบจากข้อความอีเมล ให้ทำตามขั้นตอนต่อไปนี้:
- สร้างอินสแตนซ์ของคลาส MailMessage.
- โหลดไฟล์อีเมลเข้าสู่อินสแตนซ์ MailMessage.
- สร้างอินสแตนซ์ของคลาส Attachment แล้วใช้ในลูปเพื่อดึงไฟล์แนบทั้งหมด.
- บันทึกไฟล์แนบและแสดงบนหน้าจอ.
- ระบุที่อยู่ผู้ส่งและผู้รับในอินสแตนซ์ MailMessage
- ตอนนี้คุณสามารถส่งอีเมลโดยใช้คลาส SmtpClient.
โค้ดตัวอย่างเหล่านี้ดึงไฟล์แนบจากอีเมล.
|ไฟล์แนบที่ดึงจากอีเมล| | :- | |
| โค้ดตัวอย่างต่อไปนี้แสดงวิธีการดึงไฟล์แนบจากอีเมล.
การดึง Content-Description จากไฟล์แนบ
Aspose.Email API มีความสามารถในการอ่าน Content-Description ของไฟล์แนบจากส่วนหัวของไฟล์แนบ โค้ดตัวอย่างต่อไปนี้แสดงวิธีการดึงคำอธิบายเนื้อหาจากไฟล์แนบ.
การกำหนดว่ไฟล์แนบเป็นข้อความที่ฝังอยู่
การทำงานกับวัตถุที่ฝังอยู่
วัตถุที่ฝังอยู่คือวัตถุที่สร้างด้วยแอปพลิเคชันหนึ่งและถูกใส่ไว้ในเอกสารหรือไฟล์ที่สร้างด้วยแอปพลิเคชันอื่น ตัวอย่างเช่น ตาราง Excel ของ Microsoft สามารถฝังเข้าไปในรายงาน Microsoft Word หรือไฟล์วิดีโอสามารถฝังเข้าไปในงานนำเสนอ Microsoft PowerPoint เมื่อไฟล์ถูกฝังอยู่ มันจะรักษารูปแบบเดิมไว้ แทนที่จะใส่หรือวางลงในเอกสารอื่น เอกสารที่ฝังอยู่สามารถเปิดด้วยแอปพลิเคชันต้นทางและแก้ไขได้.
การฝังวัตถุลงในอีเมล
การลบวัตถุที่ฝังอยู่จากอีเมล
LinkedResourceCollection ที่เข้าถึงผ่านคุณสมบัติ MailMessage.LinkedResources มีเมธอดสำหรับลบวัตถุที่ฝังอยู่ทั้งหมดที่เพิ่มเข้าไปในข้อความอีเมล ใช้เวอร์ชันที่มีการโอเวอร์โหลดของเมธอด LinkedResourceCollection.RemoveAt เพื่อลบทุกรอยของวัตถุที่ฝังอยู่จากข้อความอีเมล.
โค้ดตัวอย่างด้านล่างแสดงวิธีการลบวัตถุที่ฝังอยู่จากข้อความอีเมล.
การดึงวัตถุที่ฝังอยู่
หัวข้อนี้อธิบายวิธีดึงวัตถุที่ฝังอยู่จากไฟล์อีเมล วัตถุที่ฝังอยู่คือวัตถุที่สร้างด้วยแอปพลิเคชันหนึ่งและใส่ไว้ในเอกสารหรือไฟล์ที่สร้างด้วยแอปพลิเคชันอื่น ตัวอย่างเช่น ตาราง Excel ของ Microsoft สามารถฝังเข้าในรายงาน Microsoft Word หรือไฟล์วิดีโอสามารถฝังเข้าในงานนำเสนอ Microsoft PowerPoint เมื่อไฟล์ถูกฝัง มันจะคงรูปแบบเดิมไว้ แทนการแทรกหรือวางลงในเอกสารอื่น เอกสารที่ฝังสามารถเปิดด้วยแอปพลิเคชันต้นทางและแก้ไขได้ เพื่อดึงวัตถุที่ฝังออกจากข้อความอีเมล ให้ทำตามขั้นตอนต่อไปนี้:
- สร้างอินสแตนซ์ของคลาส MailMessage.
- โหลดไฟล์อีเมลเข้าในอินสแตนซ์ MailMessage
- สร้างลูปและสร้างอินสแตนซ์ของคลาส Attachment ภายในลูปนั้น.
- บันทึกไฟล์แนบและแสดงบนหน้าจอ.
- ระบุที่อยู่ผู้ส่งและผู้รับในอินสแตนซ์ MailMessage
- ส่งอีเมลโดยใช้คลาส SmtpClient.
โค้ดตัวอย่างด้านล่างดึงวัตถุที่ฝังอยู่จากอีเมล.
|วัตถุฝังที่ดึงออกจากอีเมล| | :- | |
| โค้ดตัวอย่างต่อไปนี้แสดงวิธีการดึงวัตถุที่ฝังอยู่.