Szoftverfejlesztés .NET platformon - Jegyzet 15. fejezet

A VIK Wikiből
A lap korábbi változatát látod, amilyen Hryghr (vitalap | szerkesztései) 2013. május 19., 21:26-kor történt szerkesztése után volt. (Hryghr átnevezte a(z) Szoftverfejlesztés .NET plattformon - Jegyzet 15. fejezet lapot a következő névre: Szoftverfejlesztés .NET platformon - Jegyzet 15. fejezet: pontos név)
(eltér) ← Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)
Ugrás a navigációhoz Ugrás a kereséshez

Ez az oldal a korábbi SCH wiki-ről lett áthozva. Az eredeti változata itt érhető el.

Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor kérlek javíts rajta egy rövid szerkesztéssel.

Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót


70-536 .NET Framework 2.0 Application Development Foundation

%TOC{depth="3"}%

Levél összeállítása

  • new MailMessage() üresen vagy paraméterekkel
MailMessage m = new MailMessage(fromAddr, toAddr, subject, message);
	  
  • címzettek, és egyéb paraméterek megadása

(From, To, Subject, Body, DeliveryNotificationOptions, ReplyTo, Priority)

  • AlternateView hozzáadása, ha text és html nézet is kell. Alapból html levél: m.IsBodyHtml = True
  • beágyazott kép
LinkedResource pic1 = new LinkedResource("pic.jpg", MediaTypeNames.Image.Jpeg);
pic1.ContentId = "Pic1";
avHtml.LinkedResources.Add(pic1);
// hivatkozás rá: <img src="cid:Pic1">
	  
  • Attachment hozzáadása:
m.Attachments.Add(new Attachment(@"C:\boot.ini"));
m.Attachments.Add(new Attachment(stream, file név, MediaTypeNames.Application.Octet));
	  

Levél küldése

  • SmtpClient sc = new SmtpClient(), szerver paraméterek beállítása
  • authentikációs adatok beállítása
sc.Credentials = new NetworkCredential(usernameTextBox.Text, passwordTextBox.Text);
	  
  • sc.Send(MailMessage) vagy sc.SendAsync(MailMessage)
  • lehetséges exception-ök
    • InvalidOperationException: nincs smtp hoszt név megadva
    • SmtpException, belül WebException: érvénytelen hosztnév
    • SmtpFailedRecipientException: érvénytelen címzett (csak szinkron küldéskor)
    • SmtpException: authentikációs vagy egyéb hiba
  • SSL authentikáció: sc.EnableSsl = true
  • aszinkron küldés
    • sc.SendCompleted eseményre eseménykezelő megírása
    • eseménykezelő beregisztrálása
    • sc.SendAsync()
    • leállítás: sc.SendAsyncCancel()

-- Peti - 2007.07.03.