ไฟล์ Excel ถูกใช้อย่างกว้างขวางเพื่อเก็บและแบ่งปันข้อมูลในรูปแบบของแถวและคอลัมน์ นอกจากนี้ คุณสามารถดำเนินการต่างๆ กับข้อมูล Excel และวิเคราะห์ด้วยภาพได้ ในบางกรณี คุณต้องฝังและส่งข้อมูลจากแผ่นงาน Excel ในข้อความอีเมล บทความนี้ครอบคลุมวิธีการส่งข้อมูล Excel ในเนื้อหาของอีเมลโดยทางโปรแกรมใน C# .NET
C# .NET API เพื่อส่งข้อมูล Excel ในเนื้อหาอีเมล
ในการส่งข้อมูล Excel ในข้อความอีเมล เราจะใช้ Aspose.Email for .NET เป็น API ที่ได้รับความนิยมและมีฟีเจอร์มากมายที่ให้คุณสร้างและส่งอีเมลจากภายในแอปพลิเคชัน .NET ของคุณ นอกจากนี้ เราจะใช้ Aspose.Cells for .NET เพื่อแปลงแผ่นงาน Excel เป็นเนื้อหา HTML คุณสามารถ ดาวน์โหลด DLL ของ API หรือติดตั้งจาก NuGet โดยใช้คำสั่งต่อไปนี้
PM> Install-Package Aspose.Email
PM> Install-Package Aspose.Cells
ส่งข้อมูล Excel ในเนื้อหาของอีเมลใน C
ขั้นแรก เราจะใช้ Aspose.Cells for .NET เพื่อแปลงข้อมูล Excel เป็น HTML เพื่อให้สามารถฝังลงในเนื้อหาของอีเมลได้ หลังจากนั้น เราจะใช้ Aspose.Email for .NET เพื่อเขียนอีเมล ใส่ข้อมูล Excel ลงในเนื้อหาของอีเมล และส่งอีเมล ต่อไปนี้เป็นขั้นตอนในการส่งข้อมูล Excel ในเนื้อหาของอีเมลใน C#
- โหลดสมุดงาน Excel โดยใช้คลาส [สมุดงาน] ของ Aspose.Cells 4
- บันทึกสมุดงานไปที่ MemoryStream ในรูปแบบ HTML
- อ่าน HTML จากสตรีมไปยังวัตถุสตริง
- สร้างวัตถุ MailMessage ใหม่และตั้งค่า HtmlBody เป็นเนื้อหา HTML
- สร้างและกำหนดค่าอินสแตนซ์ของคลาส SmtpClient
- ส่งอีเมลโดยใช้เมธอด SmtpClient.Send(MailMessage)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการส่งข้อมูล Excel ในเนื้อหาของอีเมลใน C#
// โหลดสมุดงาน Excel ที่ต้องการ
Workbook workbook = new Workbook("Data.xlsx");
// บันทึกสมุดงานไปยัง MemoryStream ในรูปแบบ HTML
MemoryStream ms = new MemoryStream();
workbook.Save(ms, SaveFormat.Html);
ms.Position = 0;
// สร้างวัตถุ StreamReader สำหรับ MemoryStream ข้างต้น
StreamReader sr = new StreamReader(ms);
// โหลด HTML ที่บันทึกไว้จาก StreamReader ลงในตัวแปรสตริง
string strHtmlBody = sr.ReadToEnd();
// กำหนดข้อความอีเมลใหม่และตั้งค่า HtmlBody
MailMessage message = new MailMessage();
message.HtmlBody = strHtmlBody;
message.Subject = "Inline Excel Message";
message.From = "sender@abc.com";
message.To = "receiver@xyz.com";
message.IsBodyHtml = true;
// สร้างไคลเอนต์ SMTP
SmtpClient client = new SmtpClient();
client.Host = "smtp.gmail.com";
client.Username = "Username";
client.Password = "Password";
client.Port = 587;
client.SecurityOptions = SecurityOptions.Auto;
// ส่งอีเมล
client.Send(message);
รับใบอนุญาต API ฟรี
คุณสามารถใช้ Aspose API ได้โดยไม่มีข้อจำกัดในการประเมินโดยใช้ ใบอนุญาตชั่วคราวฟรี
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีการฝังและส่งข้อมูล Excel ในเนื้อหาของอีเมลโดยใช้ C# .NET คุณเพียงแค่ติดตั้ง API ที่กล่าวถึงและรวมรหัสที่ให้มาไว้ในแอปพลิเคชัน .NET ของคุณ นอกจากนี้ คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับ API โดยใช้เอกสารด้านล่าง
ในกรณีที่คุณมีคำถาม คุณสามารถโพสต์ได้ที่ ฟอรัม ของเรา