موضوع :
Asp.Net
بازديد :
1622
همان طوري كه قبلاً بحث شده بود در رابطه با ارسال ايميل . در اين مقاله قسمت دوم آن را پي ميگيريم .
در اين قسمت به چگونگي ارسال ايميل با CC و Bcc و ... آشنا خواهيد شد و همچنين با Attach كردن فايل به ايميل به طور كامل آشنا خواهيد شد .
کلاس MailAddress:
از این کلاس برای ساختن آدرس ایمیل استفاده میشود
از این کلاس میتوان در ویژگی های(Properties) :
MailMessage.From
MailMessage.To
MailMessage.CC
MailMessage.BCC
استفاده کرد
از بین این ویژگی ها ،ویژگی .From یک ایمیل حقیقی است(یعنی یک ایمیل را به عنوان فرستنده میتوان معرفی کرد)
اما سایر ویژگی ها، کلکسیونی از ایمیل ها را دریافت میکنند
برخی از ویژگی های(Properties) کلاس MailAddress به شرح زیر میباشند
توضیحات تکمیلی در
http://msdn2.microsoft.com/en-us/library/system.net.mail.mailaddress.aspx
مثالی از نحوه استفاده از این کلاس:
[C#]
MailMessage mail = new MailMessage();
mail.From = new MailAddress("me@mycompany.com", "Steve James");
mail.To.Add("you@yourcompany.com");
mail.To.Add("you2@yourcompany.com");
mail.CC.Add("cc1@yourcompany.com");
mail.CC.Add("cc2@yourcompany.com");
mail.Bcc.Add("blindcc1@yourcompany.com");
mail.Bcc.Add("blindcc2@yourcompany.com");
mail.Subject = "This is an email";
mail.Body = "this is the body content of the email.";
[VB]
Dim mail As New MailMessage()
mail.From = New MailAddress("me@mycompany.com", "Steve James")
mail.To.Add("you@yourcompany.com")
mail.To.Add("you2@yourcompany.com")
mail.CC.Add("cc1@yourcompany.com")
mail.CC.Add("cc2@yourcompany.com")
mail.Bcc.Add("blindcc1@yourcompany.com")
mail.Bcc.Add("blindcc2@yourcompany.com")
mail.Subject = "This is an email"
mail.Body = "this is the body content of the email."
این نکات در کد بالا قابل توجه است که:
1. اگر بخواهیم گیرنده ایمیل وقتی ایمیل را دریافت میکند به جای آدرس ایمیل، نام تعیین شده توسط ما برای آن نمایش داده شود به صورت زیر عمل میکنیم
mail.From = new MailAddress("me@mycompany.com", "Steve James")
2. اگر بخواهیم نام فرستنده به صورت فارسی یا هر زبان دیگر نمایش داده شود به صورت زیر عمل میکنیم
mail.From = new MailAddress("me@mycompany.com", "فارسی",System.Text.Encoding.GetEncoding("windows-1256"))
. از روش ذکر شده بالا میتوانید برای ویژگیهای To,Bcc,CC نیز استفاده کنید
4. چون ویژگیهای To,Bcc,CC میتوانند کلکسیونی از ایمیل ها را دریافت کنند میتوانید با فراخوانی مکرر تابع ADD ایمیل های فراوانی را به آنها اضافه کنید
آیا میدانید تفاوت Toو BCC و CC در چیست؟
To به معنای گیرنده اصلی ایمیل میباشد
CC مخفف Carbon Copy میباشد و زمانی از آن استفاده میشود که بخواهیم یک کپی از ایمیل را برای شخص دیگری بفرستیم
Bcc مخفف Blind Carbon Copy میباشد.و زمانی از آن استفاده میشود که بخواهیم یک کپی از ایمیل را برای شخصی بفرستیم،به صورتی که CC و To متوجه ارسال ایمیل برای شخص سوم نشوند
اما BCC متوجه ارسال ایمیل به To و BCC خواهد شد
کلاس Attachment:
از این کلاس جهت ساخت و مدیریت ضمائم متعلق به یک شی MailMessage استفاده میشود
ضمیمه میتواند آدرس یک فایل یا یک Stream باشد.این قابلیت باعث میشود ما بتوانیم هر نوع داده ای را به ایمیل خود ضمیمه کنیم
توضیحات تکمیلی در
http://msdn2.microsoft.com/en-us/library/system.net.mail.attachment.aspx
مثالی از نحوه استفاده از این کلاس:
[C#]
mail.From = new MailAddress("me@mycompany.com");
mail.To.Add("you@yourcompany.com");
mail.Subject = "This is an email";
mail.Body = "this content is in the body";
mail.Attachments.Add(new Attachment("c:\\temp\\example.txt"));
mail.Attachments.Add(new Attachment("c:\\temp\\example2.txt"));
mail.Attachments.Add(new Attachment("c:\\temp\\example3.txt"));
[VB]
Dim mail As New MailMessage()
mail.From = New MailAddress("me@mycompany.com")
mail.To.Add("you@yourcompany.com")
mail.Subject = "This is an email"
mail.Body = "this content is in the body"
mail.Attachments.Add(New Attachment("c:\temp\example.txt"))
mail.Attachments.Add(New Attachment("c:\temp\example2.txt"))
mail.Attachments.Add(New Attachment("c:\temp\example3.txt"))
مثالی از نحوه استفاده از این کلاس در استفاده از Stream:
[C#]
MailMessage mail = new MailMessage();
mail.From = new MailAddress("me@mycompany.com");
mail.To.Add("you@yourcompany.com");
mail.Subject = "This is an email";
mail.Body = "this content is in the body";
string s = "this is some text";
byte[] data = System.Text.Encoding.ASCII.GetBytes(s);
System.IO.MemoryStream ms = new System.IO.MemoryStream(data);
mail.Attachments.Add(new Attachment(ms, "example.txt","text/plain"));
SmtpClient smtp = new SmtpClient("127.0.0.1");
smtp.Send(mail);
[VB]
Dim mail As New MailMessage()
mail.From = New MailAddress("me@mycompany.com")
mail.To.Add("you@yourcompany.com")
mail.Subject = "This is an email"
mail.Body = "this content is in the body"
Dim s As String = "this is some text"
Dim data As Byte() = Encoding.ASCII.GetBytes(s)
Dim ms As New IO.MemoryStream(data)
mail.Attachments.Add(New Attachment(ms, "example.txt", "text/plain"))
Dim smtp As New SmtpClient("127.0.0.1")
smtp.Send(mail)
تاريخ : چهارشنبه 13 آذر 1387
ساعت : 9:14:24 AM
نويسنده :
مهرداد قاسمي
|
نظرات