ارسال داده های اکسل در متن ایمیل با استفاده از C#.NET

فایل های اکسل به طور گسترده ای برای نگهداری و به اشتراک گذاری داده ها در قالب سطر و ستون استفاده می شوند. علاوه بر این، می توانید عملیات مختلفی را روی داده های اکسل انجام دهید و به صورت بصری آن را تجزیه و تحلیل کنید. در برخی موارد، باید داده ها را از یک برگه اکسل در پیام ایمیل جاسازی و ارسال کنید. برای انجام این کار، این مقاله نحوه ارسال داده‌های اکسل در بدنه ایمیل به صورت برنامه‌ریزی در C#.NET را پوشش می‌دهد.

C#. API های NET برای ارسال داده های اکسل در متن ایمیل

برای ارسال داده‌های Excel در پیام‌های ایمیل، از Aspose.Email for .NET استفاده می‌کنیم. این یک API محبوب و غنی است که به شما امکان می دهد از داخل برنامه های NET خود ایمیل ایجاد و ارسال کنید. علاوه بر این، ما از Aspose.Cells برای .NET برای تبدیل برگه های اکسل به محتوای HTML استفاده خواهیم کرد. می‌توانید DLLهای APIها را دانلود یا با استفاده از دستورات زیر از NuGet نصب کنید.

PM> Install-Package Aspose.Email
PM> Install-Package Aspose.Cells

ارسال داده های اکسل در بدنه ایمیل در سی شارپ

ابتدا از Aspose.Cells برای دات نت استفاده می کنیم تا داده های اکسل را به HTML تبدیل کنیم تا بتوان آن را در بدنه ایمیل جاسازی کرد. پس از آن، از Aspose.Email برای دات نت برای نوشتن ایمیل، درج داده های اکسل در متن ایمیل و ارسال ایمیل استفاده می کنیم. مراحل زیر برای ارسال داده های اکسل در بدنه ایمیل در سی شارپ آمده است.

  • کتاب کار اکسل را با استفاده از کلاس Workbook Aspose.Cells بارگیری کنید.
  • کتاب کار را در MemoryStream در قالب HTML ذخیره کنید.
  • HTML را از جریان به یک شی رشته بخوانید.
  • یک شی MailMessage جدید ایجاد کنید و HtmlBody آن را روی محتوای HTML تنظیم کنید.
  • نمونه کلاس SmtpClient را ایجاد و پیکربندی کنید.
  • ایمیل را با استفاده از روش SmtpClient.Send(MailMessage) ارسال کنید.

نمونه کد زیر نحوه ارسال داده های اکسل را در بدنه ایمیل در سی شارپ نشان می دهد.

// کتاب کار اکسل مورد نظر را بارگیری کنید
Workbook workbook = new Workbook("Data.xlsx");

// کتاب کار را با فرمت HTML در MemoryStream ذخیره کنید
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 بدون محدودیت ارزیابی استفاده کنید.

نتیجه

در این مقاله نحوه جاسازی و ارسال داده های اکسل در بدنه ایمیل با استفاده از C#.NET را یاد گرفتید. به سادگی می توانید API های ذکر شده را نصب کرده و کد ارائه شده را در برنامه های دات نت خود ادغام کنید. علاوه بر این، می توانید با استفاده از مستندات ارائه شده در زیر، در مورد API ها بیشتر کاوش کنید.

در صورت داشتن هر گونه سوال، می توانید در [فروم 10 ما پست کنید.

همچنین ببینید