ส่งข้อมูล Excel ในเนื้อหาอีเมลโดยใช้ C# .NET

ไฟล์ 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 โดยใช้เอกสารด้านล่าง

ในกรณีที่คุณมีคำถาม คุณสามารถโพสต์ได้ที่ ฟอรัม ของเรา

ดูสิ่งนี้ด้วย