Posielanie EMailu z ASP.NET stránky
Dátum: 12. July 2001
Vec: ASP.net

Keď sa tak preplazujem slovenským webom, zdá sa mi, že tu sa akosi opomína nová, veľmi sľubná technológia Microsoftu ASP.NET. Možno je to tým, že nie je dostatok informacií o tom, čo nám ASP.NET prinesie oproti ASP.



Najlepšie sa to ale demonštruje na ukážke jednoduchosti programovania - takže začnem s problémom, ktorý bol veľmi tažko riešiteľný v ASP: posielanie EMailu.

ASP.NET obashuje sadu classov na posielanie EMailu v Namespace System.Web.Mail. Vložme teda do stránky pomocou príkazu @Import tento namespace (miesto, kde su uložene potrebné objekty):

<%@ Import Namespace="System.Web.Mail" %>

Z tohoto namespace potrebujeme dva objekty: MailMessage a SmtpMail. Prvý je class, ktorý bude obsahovať informácie o EMailovej správe a druhý je metóda, ktorou sa tento class spracuje. Kód je jednoduchý (nebudem tu rozpisovat syntax .aspx stránky - možno nabudúce, ak má niekto záujem):

Dim mail As New MailMessage
        mail.From = "me@myservername.com"
        mail.To = "you@yourservername.com"
        mail.Subject = "Pozdravujem Slovensko"
        mail.Body = "Pozdrav z dialky pri pohary mineralky posiela Nasinec!"
        mail.BodyFormat = MailFormat.Html
        SmtpMail.Send(mail)

Aby pekne všetko fungovalo, dajme na stránku tlačítko, ktoré keď návštevník stlačí, EMail sa pošle. Naviac vypíšeme na stránku priateľský oznam, že sa tak stalo. Všimnite si, ako jednoducho sa pomocou Label1 dá do stránky vložiť a meniť text. Takže celá .aspx stránka na odoslanie EMailu z ASP.NET bude nasledovná:

<%@ Import Namespace="System.Web.Mail" %>
<html>
<head>

    <script language="VB" runat="server">

      Sub Button1_Click(sender As Object, e As EventArgs)
        Dim mail As New MailMessage

        mail.From = "me@myservername.com"
        mail.To = "you@yourservername.com"
        mail.Subject = "Pozdravujem Slovensko"
        mail.Body = "Pozdrav z dialky pri pohary mineralky posiela Nasinec!"
        mail.BodyFormat = MailFormat.Html
        SmtpMail.Send(mail)

        Label1.Text="E-Mail odisiel"
      End Sub

    </script>

</head>
<body>

  <h3><font face="Verdana">Posielanie EMailu z ASP.NET stranky.</font></h3>

    <form runat=server>

     <asp:Button
          id=Button1
          Text="Posli EMail"
          onclick="Button1_Click"
          runat="server" />

     <asp:Label
          id=Label1
          runat=server />

  </form>

</body>
</html>

Teraz už treba dať tento kód do súboru, ktorý nazveme napr. EMail.aspx (všimnite si koncovku) a uloziť ho na web server. Na záver je treba upozorniť, že aby EMailova stránka odišla, musí byť na servri nainštalovaný .NET Framework a spustený SMTP server.



Tento článok je z Developer.sk
http://www.developer.sk/

URL pre tento príspevok je:
http://www.developer.sk//article.php?sid=200