NET/משלוח אימייל: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Crazy Ivan (שיחה | תרומות)
מ קטגוריה
Effib (שיחה | תרומות)
הרחבה
שורה 5:
2. System.Net.Mail
 
 
מאמר זה יתמקד בספריה החדשה יותר, System.Net.Mail, שקיימת החל מגרסה 2 של הדוט נט.
ספריה System.Web.Mail הגיע עם דוט נט 1, וענתה באופן חלקי על שליחת אימייל.
מאמר זה יתמקד בספריה החדשה יותר, System.Net.Mail, שקיימת החל מגרסה 2 של הדוט נט, ובה מענה טוב יותר לסוגים שונים של משלוח אימייל.
 
ספריית System.Net.Mail מכילה בתוכה מספר מחלקות המאפשרות שליחת אימייל באמצעות פרוטוקול Smtp
שורה 16 ⟵ 18:
 
שליחה בסיסית ב-VB תעשה באופן הבא:
 
הגדרה של הודעת האימיל והתכנים שבה
<source lang="vbnet">
 
Dim myMailMessage As New MailMessage()
שורה 27 ⟵ 32:
myMailMessage.Body = "Body"
 
</source>
לחילופין ניתן להמיר את השורות עד כה לאופן הבא:
 
 
לחילופין ניתן להמיר את השורות עד כה, לאופןלהגדיר הבאאת הודעת האימייל באופן מקוצר:
 
<source lang="vbnet">
Dim myMailMessage As New MailMessage("from", "To", "Subject", "Body")
</source>
 
 
לאחר מכן יש להגדיר לקוח Smtp ולבצע את המשלוח של האימייל
 
<source lang="vbnet">
Dim mySmtpClient As New SmtpClient(smtpIp, port)
 
mSmtpClient.Send(myMailMessage)
</source>
 
 
במידב ומשלוח האימייל לא התבצע, אפשר ללכוד את הודעות השגיאה השונות באמצעות Exception.
כתיב עוד יותר מקוצר של כל התהליך הוא באופן הבא:
<source lang="vbnet">
Dim MySmtpClient As New SmtpClient(smtpIp, port)
MySmtpClient.Send(New MailMessage("from", "To", "Subject", "Body"))
</source>
 
 
דוגמה. משלוח אימייל באמצעות שרת 012.net.il:
<source lang="vbnet">
Dim MySmtpClient As New SmtpClient("smtp.012.net.il", "25")
MySmtpClient.Send(New MailMessage("bibinat@012.net.il", _
"alon123@gmail.com", "Hello", "What's new?"))
</source>
 
במידבבמידה ומשלוח האימייל לא התבצע, אפשר ללכוד את הודעות השגיאה השונות באמצעות Exception.
 
 
אם השרת דורש אימות (authentication) יש להוסיף את שתי הפקודות הבאות:
<source lang="vbnet">
mySmtpClient.Credentials = New Net.NetworkCredential(UserName, Password)
mySmtpClient.UseDefaultCredentials=false
</source>
 
אם הוא דורש משלוח מוצפן, יש להוסיף את הפקודה:
 
<source lang="vbnet">
mySmtpClient.EnableSsl = True
</source>
 
ניתן להתרשם בדוגמאות אלו מהפשטות והאלגנטיות של שליחת האימייל באמצעות ספריה זו.
 
==אפשרויות מתקדמות==