GỬI MAIL TRONG ASP.NET

Gửi mail là một tính năng không thể thiếu trong lập trình web. Khi gửi người dùng đăng kí, mua hàng, lấy lại mật khẩu hoặc liên hệ thì gửi m... thumbnail 1 summary
gui mail trong aspnetGửi mail là một tính năng không thể thiếu trong lập trình web. Khi gửi người dùng đăng kí, mua hàng, lấy lại mật khẩu hoặc liên hệ thì gửi mail là điều cần thiết. Hôm nay mình sẽ giới thiệu cho các bạn cách gửi mail thông qua server mail của gmail. Vì đây chỉ là demo cách gửi mail nên mình sẽ làm đơn giản và các bạn tự phát triển thêm theo ý riêng nha.
Code phần giao diện:

<div>
            <table>
                <tr>
                    <td colspan="2"><asp:Label ID="lbMessage" runat="server" /></td>
                </tr>
                <tr>
                    <td>To</td>
                    <td><asp:TextBox ID="txtTo" runat="server" /></td>
                </tr>
                <tr>
                    <td>Subject</td>
                    <td><asp:TextBox ID="txtSubject" runat="server" /></td>
                </tr>
                <tr>
                    <td>Content</td>
                    <td><asp:TextBox ID="txtContent" runat="server" TextMode="MultiLine" /></td>
                </tr>
                <tr>
                    <td></td>
                    <td><asp:Button ID="btnSend" runat="server" Text="Send" onclick="btnSend_Click"
                            style="height: 26px" /></td>
                </tr>
            </table>
    </div>
 Khá đơn giản chỉ có 5 controls chính: 1 label thông báo, 1 text ghi mail người nhận, 1 text subject, 1 text content, và 1 button send.
Còn đây là behind code:

private void SendMail()
    {
        string to = txtTo.Text;
        int port = 587;
        string subject = txtSubject.Text;
        string content = txtContent.Text;
        SmtpClient client = new SmtpClient();
        client.EnableSsl = true;
        client.Port = port;
        client.Host = "smtp.gmail.com";
        client.Credentials = new NetworkCredential("timeislifesgift@gmail.com", "p@sswprd");
        MailAddress from = new MailAddress("timeislifesgift@gmail.com", "Webzoomz");
        MailAddress toAddress = new MailAddress(to);
        MailMessage message = new MailMessage(from, toAddress);
        message.Body = content;
        message.Subject = subject;
        try
        {
            client.Send(message);
            lbMessage.Text = "Send mail sucessfully!!!";
        }
        catch (Exception ex)
        {
            lbMessage.Text = ex.Message;
        }
    }

    protected void btnSend_Click(object sender, EventArgs e)
    {
        SendMail();
    }
Trong behind code này các bạn chú ý là đến port và host gửi mail. Đây là 2 thành phần quan trọng, ngoài ra các bạn chú ý đến tên email của bạn và password.
Đến đây chúng ta đã có thể gửi email thành công.

Đây là cách ghi trực tiếp các thông tin vào file code. Nhưng để tăng tính bảo mật và dễ dàng truy cập và sửa đổi chúng ta nên đưa thông tin mail server vào trong file Web.config:

<system.net>
    <mailSettings>
      <smtp deliveryMethod="Network" from="timeislifesgift@gmail.com">
        <network host="smtp.gmail.com"
                 userName="timeislifesgift@gmail.com"
                 password="p@ssword" port="587"
                 defaultCredentials="false"
                 enableSsl="true" />
      </smtp>
    </mailSettings>
  </system.net>

Và lúc đó code gửi mail của chúng ta sẽ như sau:

private void SendMail()
    {
        string to = txtTo.Text;
        int port = 587;
        string subject = txtSubject.Text;
        string content = txtContent.Text;
        SmtpClient client = new SmtpClient();
        MailAddress from = new MailAddress("timeislifesgift@gmail.com", "Webzoomz");
        MailAddress toAddress = new MailAddress(to);
        MailMessage message = new MailMessage(from, toAddress);
        message.Body = content;
        message.Subject = subject;
        try
        {
            client.Send(message);
            lbMessage.Text = "Send mail sucessfully!!!";
        }
        catch (Exception ex)
        {
            lbMessage.Text = ex.Message;
        }
    }

    protected void btnSend_Click(object sender, EventArgs e)
    {
        SendMail();
    }
Hi vọng với chút ít kiến thức trên bạn có thể xây dựng cho mình được một form gửi mail đúng ý.

Không có nhận xét nào

Đăng nhận xét

Tin HOT

Dịch thuật PLG