This article has been localized into Romanian by the community.
Trimiterea de email-uri
Trimiterea de e-mail-uri folosind ASP.NET este destul de simpla. .NET Framework ofera un namespace intreg pentru utilizarea e-mail-urilor, namespace-ul System.Net.Mail. In urmatoarele exemple, o sa folosim 2 clase apartinand acestui namespace: Clasa MailMessage, pentru e-mail-ul propriu-zis, si clasa SmtpClient pentru trimiterea lui.
Dupa cum probabil ai aflat, Mail-urile sunt trimise printr-un server SMTP, si pentru a trimite email-uri folosind .NET framework o sa ai nevoie sa accesezi serverul SMTP. Daca testezi lucrurile loca, compania care-ti ofera acces la internet va avea de obicei un server SMTP pe care poti sa-l folosesti. Daca vrei sa folosesti unul dintre aceste exemple pentru website-ul tau, compania care-ti host-eaza website-ul va avea, de obicei, un server SMTP pe care sa-l folosesti. Mergi la paginile de suport sa gasesti adresa actuala, este de obicei similara cu smtp.your-isp.com sau mail.your-isp.com.
Odata ce ai acces la un server SMTP, suntem gata sa trimitem primul nostru e-mail. Pentru primul exemplu, ai nevoie de o pagina goala cu urmatorul cod in CodeBehind:
protected void Page_Load(object sender, EventArgs e)
{
try
{
MailMessage mailMessage = new MailMessage();
mailMessage.To.Add("your.own@mail-address.com");
mailMessage.From = new MailAddress("another@mail-address.com");
mailMessage.Subject = "ASP.NET e-mail test";
mailMessage.Body = "Hello world,\n\nThis is an ASP.NET test e-mail!";
SmtpClient smtpClient = new SmtpClient("smtp.your-isp.com");
smtpClient.Send(mailMessage);
Response.Write("E-mail sent!");
}
catch(Exception ex)
{
Response.Write("Could not send the e-mail - error: " + ex.Message);
}
}
Doar de asta ai nevoie pentru a trimite un e-mail. Am creat o noua instanta MailMessage, adaugat un nou receptor, setat adresa "From" si subiectul, si apoi am scris un simplu mesaj de test pentru corpul e-mail-ului. Dupa aceasta, am facut o noua instanta a SmtpClient, cu adresa de Host a serverului SMTP pe care il folosesti ca un parametru, apoi folosim SmtpClient pentru a arunca e-mail-ul in spatiul cibernetic. Totul este intr-un bloc try..catch, in cazul in care ceva nu functioneaza.
Acesta a fost un exemplu de baza, dar sunt mult mai multe optiuni. Mai jos este o lista scurta cu idei interesante:
Poti sa atasezi unul sau mai multe fisiere, prin adaugarea lor la colectia de atasamente. In acest exemplu, atasam un fisier numit "image.jpg", localizat in fisierul de baza al web-site-ului ASP.NET.
mailMessage.Attachments.Add(new Attachment(Server.MapPath("~/image.jpg")));
Poti trimite mai multor persoane in acelasi timp, prin adaugarea altei adrese de e-mail la colectia "To", asa:
mailMessage.To.Add("your.own@mail-address.com");
mailMessage.To.Add("another@mail-address.com");
Poti sa numesti expeditorul - in caz contrar, doar adresa de e-mail va fi vizibila in coloana "From" al receptorului. De exemplu:
mailMessage.From = new MailAddress("me@mail-address.com", "My Name");
Poti trimite e-mail-uri HTML, in locul celor standard plaintext, pentru a folosi scheme mai complicate. Mai jos este un exemplu simplu:
mailMessage.IsBodyHtml = true;
mailMessage.Body = "Hello <b>world!</b>";
Poti sa folosesti campurile CC si BCC, ca si in mesajele de e-mail obisnuite, in acest fel:
mailMessage.CC.Add("me@mail-address.com");
mailMessage.Bcc.Add("me2@mail-address.com");
Poti sa setezi prioritatea unui e-mail, in acest fel:
mailMessage.Priority = MailPriority.High;