فروش ویژه : ثبت دامنه آی آر IR فقط 99 هزار تومان سفارش آنلاین/ تحویل آنی
فروش ویژه : ثبت دامنه دات کام COM فقط 899 هزار تومان سفارش آنلاین/ تحویل آنی (بهترین پیشنهاد)
فروش ویژه : 1500 مگابایت هاست ابری به همراه SSL رایگان ماهیانه فقط 69 هزار تومان مشاهده مشخصات و پلن ها

تابع ارسال ایمیل ASP.Net

ارسال ایمیل با ASP.Net بسیار ساده است. .NET framework شامل فضای نام (Namespace) امکان دسترسی به تمامی کلاس های لازم جهت ارسال ایمیل را در اختیار برنامه نویس قرار میدهد و آن System.Net.Mail میباشد.

بطور مثال در ادامه از دو کلاس این Namespace استفاده شده است؛ یکی کلاس MailMessage برای ایجاد ایمیل و دیگری کلاس SmtpClient  برای ارسال ایمیل.

 

از آنجایی که میدانید ایمیل ها از طریق پروتکل SMTP ارسال می شوند و برای ارسال ایمیل با .NET framework شما نیاز به دسترسی به سرور  SMTP را خواهید داشت.

چناچه میخواهید ارسال ایمیل را از طریق وبسایتتان انجام دهید میباسیت شرکت خدمات هاستینگ مربوطه SMTP سرور داشته باشد تا بتوانید از آن استفاده نمایید.

 

جهت این کار ابتدا فضای نام System.Net.Mail را اضافه میکنیم.

using System.Net.Mail;

 

سپس به تنها چیز که نیاز دارید نوشتن کد زیر است:

 

protected void Page_Load(object sender, EventArgs e)

{

    try

    {

        MailMessage mailMessage = new MailMessage();

        mailMessage.To.Add("email@yourdomain.com");

        mailMessage.From = new MailAddress("another@yourdomain.com");

        mailMessage.Subject = "ASP.NET e-mail test";

        mailMessage.Body = "Hello world,\n\nThis is an ASP.NET test e-mail!";

        SmtpClient smtpClient = new SmtpClient("smtp.your-hosting.com");

        smtpClient.Send(mailMessage);

        Response.Write("E-mail sent!");

    }

    catch(Exception ex)

    {

        Response.Write("Could not send the e-mail - error: " + ex.Message);

    }

}

 

 

توضیح کد بالا:

ابتدا اقدام به ایجاد یک نمونه(شئ) از کلاس MailMessage میکنیم، وسپس یک دریافت کننده اضافه میکنیم (قسمت To) و آدرس فرستنده (قسمت From) و موضوع (قسمت Subject) را مشخص کرده و محتوای ایمیل را در قسمت Body مینویسیم.

سپس اقدام به ایجاد یک نمونه(شئ) از کلاس SmtpClient میکنیم و سپس اطلاعات SMTP سرور را وارد میکنیم سپس از شئ کلاس SmtpClient که ایجاد کردیم برای ارسال ایمیل به فضای مجازی استفاده میکنیم.

 تمام این موارد برای کنترل و اداره خطا توسط بلاک های Try و  Catch احاطه شده است.

 

چنانچه تمایل به بررسی گزینه های و موارد بیشتر دارید به کد های زیر نیز نگاهی بیندازید.

 

میتوانید برای ارسال کننده نامی مشخص در نظر بگیرید:

با کد زیر میتوانید نام ارسال کننده را مشخص کنید، در غیر اینصورت تنها  نام ایمیل ارسال کننده نمایش داده خواهد شد.

mailMessage.From = new MailAddress("me@yourdomain.com", "My Name");
 

 

 

میتوانید ایمیل های HTML ارسال نمایید:

به جای متن ساده و پیشفرض ایمیل ها با کد زیر میتوانید ایمیل های HTML ارسال نمایید.

mailMessage.IsBodyHtml = true;
mailMessage.Body = "Hello <b>world!</b>";

 

میتوانید یک با چند فایل را ضمیمه(Attach) کنید:

به راحتی با اضافه کردن مجموعه Attachment میتوانیم فایلی که در مسیر Root وبسایت قرار دارد را ضمیمه ایمیل خود کنیم، در این مثال فایل با نام image.jpg را ضمیمه کردیم.

mailMessage.Attachments.Add(new Attachment(Server.MapPath("~/image.jpg")));

 

میتوانید برای ایمیل هایتان اولویت (Priority) مشخص کنید:

کد مربوطه به شرح زیر است.

mailMessage.Priority = MailPriority.High;

 

میتوانید ایمیل ها را به صورت همزمان برای چند نفر ارسال کنید:

برای اینکار کافیست آدرس ایمیل های دیگر را در قسمت To اضافه نمایید.

mailMessage.To.Add("your.own@yourdomain.com");
mailMessage.To.Add("another@yourdomain.com");

 

میتوانید از فیلدهای CC و BCC استفاده کنید:

برای این کار کافیست کد زیر را اضافه کرده و آدرس ایمیل ها را درون آن قرار دهید.

 

mailMessage.CC.Add("me@yourdomain.com");
mailMessage.Bcc.Add("me2@yourdomain.com");

 

آیا این پاسخ مفید بود؟

خوانده شده

تابع ارسال ایمیل PHPMailer

 یکی از ویژگی های زبان برنامه نویسی PHP قابلیت ارسال ایمیل از طریق تابع PHPMailer است. PHPMailer...

تابع ارسال ایمیل CDO

جهت ارسال ایمیل از طریق کدهای برنامه نویسی ASP.Net می توانید از تابع CDO به شرح زیر استفاده...