ارسال ایمیل در سی شارپ (بخش اول)

در این آموزش نحوه ارسال یک ایمیل ساده(بدون فایل پیوست) در سی شارپ را فرا خواهید گرفت. در ابتدا می بایست با کتابخانه ها و ابزار آماده برای انجام این کار آشنا شویم. مایکروسافت برای پیاده سازی  و مدیریت پروتکل های اینترنت دو کتابخانه به نام های System.Net و System.Net.Socket ارائه کرده است. این دو کتابخانه برای ارسال و دریافت داده ها بر روی اینترنت  استفاده می شوند. برای ارسال ایمیل در سی شارپ از پروتکل SMTP که مخفف شده ی عبارت Simple Mail Transfer Protocol است، استفاده می شود. امکان ارسال ایمیل را می توانیم توسط کلاس های SmtpClient و MailMessage در اختیار داشته باشیم. برای هر ایمیل نیازمند اطلاعات زیر هستیم:

 

[checklist]

  • عنوان ایمیل
  • فرستنده
  • گیرنده
  • متن پیام
  • هاست سرویس دهنده
  • پورت مورد استفاده
  • نام کاربری
  • کلمه عبور

[/checklist]

از مجموع ۸ موردی که در بالا به آنها اشاره شد، تنها متن پیام و موضوع ایمیل می توانند خالی باشند. برای مقدار دهی هاست سرویس دهنده و پورت مورد استفاده اگر بخواهیم با سرویس دهنده ایمیل گوگل(جی میل) کار کنیم،  باید به ترتیب مقادیر smtp.gmail.com و ۵۸۷ را وارد کنیم. اما معمولا برای سرویس دهنده های دیگر از پورت ۲۱ استفاده می شود. برای مقدار دهی نام کاربری و کلمه عبور نیز باید از اطلاعات حساب ایمیل خود استفاده کنید.

به نمونه کد زیر دقت کنید:

try
{
    MailMessage mail = new MailMessage();
    SmtpClient SmtpServer = new SmtpClient("هاست سرویس دهنده");
    mail.From = new MailAddress("آدرس ایمیل فرستنده");
    mail.To.Add("آدرس ایمیل گیرنده");
    mail.Subject = "موضوع ایمیل";
    mail.Body = "متن پیام";
    SmtpServer.Port = 587;//پورت مورد استفاده
    SmtpServer.Credentials = new System.Net.NetworkCredential("نام کاربری",
    "کلمه عبور");
    SmtpServer.EnableSsl = true;
    SmtpServer.Send(mail);
    MessageBox.Show("پیام شما با موفقیت ارسال شد");
}
catch (Exception ex)
{
    MessageBox.Show(ex.ToString());
}

[divider]
مثال کاربردی:
نمونه کد بالا را می توانید در رویداد Click یک دکمه قرار دهید تا با کلیک بر روی آن ایمیل شما فرستاده شود. String های مربوط به بخش های مختلف نمونه کد را می توانید از TextBox هایی که بر روی فرم برنامه قرار داده اید استخراج کنید.
1زمانی که بر روی دکمه “ارسال” کلیک شود، چنانچه اطلاعاتی که وارد کرده اید صحیح باشند، ایمیل شما ارسال خواهد شد و پیام زیر را دریافت خواهید کرد.
2
حال اگر به صندوق ورودی “گیرنده” مراجعه کنیم، ایمیل دریافتی را مشاهده خواهیم کرد.
3در بخش های بعدی در مورد “نحوه پیوست فایل ها به ایمیل” و ارسال “ایمیل HTML” بحث خواهیم کرد.

موفق و پیروز باشید…
همچنین می توانید نمونه پروژه مربوط به این آموزش را دانلود نمایید:
پسورد فایل: www.myempire.ir

[button color=”blue” size=”medium” link=”https://myempire.ir/wp-content/uploads/SendMailExamplewww.myempire.ir_.zip” target=”blank” ]دریافت نمونه پروژه[/button]