در این مقاله قسمت دوم آن را پی میگیریم . در این قسمت به چگونگی ارسال ایمیل با 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.” این نکات در کد بالا قابل توجه است که:

 

۱٫ اگر بخواهیم گیرنده ایمیل وقتی ایمیل را دریافت میکند به جای آدرس ایمیل، نام تعیین شده توسط ما برای آن نمایش داده شود به صورت زیر عمل میکنیم mail.From = new MailAddress(“me@mycompany.com“, “Steve James”)   ۲٫ اگر بخواهیم نام فرستنده به صورت فارسی یا هر زبان دیگر نمایش داده شود به صورت زیر عمل میکنیم   mail.From = new MailAddress(“me@mycompany.com“, “فارسی”,System.Text.Encoding.GetEncoding(“windows-1256”))

. از روش ذکر شده بالا میتوانید برای ویژگیهای To,Bcc,CC نیز استفاده کنید

 

آیا میدانید تفاوت Toو BCC و CC در چیست؟

 

اما BCC متوجه ارسال ایمیل به To و BCC خواهد شد

۴٫ چون ویژگیهای To,Bcc,CC میتوانند کلکسیونی از ایمیل ها را دریافت کنند میتوانید با فراخوانی مکرر تابع ADD ایمیل های فراوانی را به آنها اضافه کنید To به معنای گیرنده اصلی ایمیل میباشد CC مخفف Carbon Copy میباشد و زمانی از آن استفاده میشود که بخواهیم یک کپی از ایمیل را برای شخص دیگری بفرستیم Bcc مخفف Blind Carbon Copy میباشد.و زمانی از آن استفاده میشود که بخواهیم یک کپی از ایمیل را برای شخصی بفرستیم،به صورتی که CC و To متوجه ارسال ایمیل برای شخص سوم نشوند کلاس 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)