شرح صورت مسئله
در یک فرایند کسب و کار، برای آگاه کردن کاربران از رویدادهای خاصی که در برنامه اتفاق میافتد غالباً از اعلانهای درونبرنامهای استفاده میشود. با توجه به اینکه کاربر مجبور است مکرراً از برنامه بازدید کند تا از آن مطلع شود. در نتیجه، درصورت نیاز میتوان ایمیلهایی را که یک کانال بهراحتی در دسترس کاربران است، برای ایجاد اعلانهای رویداد محور استفاده کرد.
در اینجا روش ارسال ایمیل با استفاده از SMTP در فرایند کسب و کار در نرم افزار دیدگاه با استفاده از زبان برنامه نویسیC# در فعالیت کدنویسی را بررسی میکنیم.
SMTP ، روش استاندارد برای ارسال ایمیل با استفاده از زبان برنامه نویسیC# ،SMTP (Simple Mail Transfer Protocol) است. این یک پروتکل شبکهای است که برای ارسال ایمیل از طریق اینترنت استفاده میشود. علاوه بر این، به شما امکان میدهد تا در چندین شبکه ایمیلها را ارسال کنید. بنابراین، SMTP به طور گسترده در بسیاری از برنامهها برای ارسال ایمیل استفاده میشود.
استفاده از SMTP برای ارسال ایمیل در برنامه C# مزایای خاصی دارد. از طریق فضای System.Net.Mail در .NET Framework از پیش ساخته شده است. برای شروع فقط به اعتبارنامه SMTP نیاز دارید. کتابخانه SMTP داخلی هدرهای مورد نیاز را برای ارسال ایمیل اختصاص میدهد اما با توجه به اینکه بین سرویسگیرنده و سرور SMTP، به صورت رفت و برگشتی ارتباط برقرار میکند. بنابراین، سربار تأخیر اضافه میکند که فرآیند را به تاخیر میاندازد. در هر ایمیل یک اتصال SMTP را باز و بسته میکند. به همین دلیل، ارسال ایمیلهای انبوه با SMTP توصیه نمیشود زیرا میتواند باعث مشکلات عملکرد شود.
using System;
using System.Net;
using System.Net.Mail;
using Chargoon.Didgah.BPMS.CommonApi;
namespace Chargoon.Didgah.BPMS.Runtime
{ public class ScriptTask : IScriptTask
{ public IExecution Execution { get; set; }
public void Execute() {
try { SmtpClient client = new SmtpClient()
{
Host = “mail.chargoon.com”,
Port = 587, // SSL پورت587 برای ارتباط
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new NetworkCredential()
// اطلاعات احراز هویت را با سرور SMTPبرای احراز هویت حساب فرستنده خود را وارد کنید// }
UserName = ” UserName “,
Password = ” Password ”
}
};
System.Net.Mail.MailMessage X = new System.Net.Mail.MailMessage();
X.From = new MailAddress(“m.nazari@chargoon.com”); تعریف ایمیل فرستنده//
X.To.Add( “mobinnazari624@gmail.com”); تعریف ایمیل گیرنده//
X.Subject = “Email Subject”; تعریف موضوع ایمیل//
X.Body = “Email Body”; تعریف متن ایمیل//
X.IsBodyHtml = true; برای متن ایمیل استفاده کنید// HTMLمیتوانید از
client.Send(X); ارسال ایمیل ساخته شده//
نمایش پیغام در صورت ارسال موفق ایمیل در فیلد رشته که خروجی فعالیت کدنویسی است.//
Execution.SetVariable(“RESULTEMAIL”, “Email Successfully Sent”);
}
catch (Exception ex)
{ نمایش خطا در صورت ارسال ناموفق ایمیل در فیلد رشته که خروجی فعالیت کدنویسی است.//
Execution.SetVariable(“RESULTEMAIL”, ex.ToString());
}
}
}
}
[ratemypost]