فرستادن ایمیل از یک صفحه ASP.NET VB.Net

برای فرستادن Email از یک صفحه ASP.NET بایستی از کلاس SmtpMail که در فضانام System.Web.Mail قرار دارد استفاده کرد که شامل متد استاتیک Send است. بهرحال ساده ترین راه برای فرستادن Email فراخوانی یک نمونه متد Send از کلاس MailMessage است. کلاس MailMessage در فضانام System.Web.Email قرار دارد که پیغام Email را نشان می دهد.

کلاس MailMessage در برگیرنده خاصیتهای مشابه شئ CDONTS است ( CDONTS رایجترین شئ برای فرستادن Email در ASP کلاسیک است).

بعنوان مثال خاصیتهایی چون: Body ،Priority ،Subject ،BodyFormat ،Bcc ،Cc ،From ،To.

بهرحال برای فرستادن Email بایستی نمونه ای از کلاس MailMessage ساخته شود و خواص آن مشخص شود:
?- ابتدا نمونه ای از کلاس MailMessage ساخته می شود:

Dim ObjMM As New MailMessage

?- سپس آدرس email دریافت کننده:

ObjMM.To="someone@someaddress.com"

?- آدرس فرستنده email:

ObjMM.From="Nashrestan.ir@Gmail.com"

?- همچنین می توان فیلدهای Cc و Bcc را داشت:

ObjMM.Cc="Nashrestan.ir@Gmail.com"
ObjMM.Bcc="Nashrestan.ir@Gmail.com"

?- بوسیله خاصیت BodyFormat نحوه فرستادن email بصورت text و یا html مشخص می شود:

Obj.MM.BodyFormat=MailFormat.Text

?- خاصیت Priority میزان Security میل و فرستادن آنرا مشخص می کند که شامل سه انتخاب High ،Normal و Low است:

ObjMM.Priority=MailPriority.Normal

?- خاصیت Subject عنوان میل را مشخص می کند:

ObjMM.Subject="Hello there"

?- بوسیله Body بدنه Email مشخص می شود ( پیغام ):

ObjMM.Body = "This is body!"

توجه داشته باشید که فضانام System.Web.Mail در صفحه ASP.NET فراخوانی شود:

<% @import NameSpace="System.Web.Mail" %>

بعد از تعیین خواص MailMessage ، متد Send از کلاس SmtpMail برای کلاس شبیه سازی شده MailMessage بصورت زیر فراخوانی می شود:

SmtpMail.Send(ObjMM)

کلاس SmtpMail برای فرستادن Email از سرویس Smtpی استفاده می کند که در ساختار IIS وجود دارد. به تعبیر دیگر با بکار بردن متد Send، از سرور داخلی SMTP برای فرستادن Email استفاده می شود. برای مشخص کردن سرور SMTP از نوع دیگر ( غیر از پیش فرض ) باید خاصیت SmtpServer آن بصورت زیر تعیین شود:

SmtpMail.SmtpServer= emailservername

در غیر اینصورت SmtpServer پیش فرض (Default) بصورت زیر است:

SmtpMail.SmtpServer=""

یکی از مهمترین کاربردهای فرستادن Email از طریق صفحات وب دریافت نظرات، اطلاعات و ... از طریق یک فرم html و ارسال آن به مدیر سایت است (Feedback).