Halaman Web ASP.NET - Pembantu WebMail
Pembantu WebMail - Salah satu dari banyak Pembantu Web ASP.NET yang berguna.
Dengan objek WebMail Anda dapat dengan mudah mengirim email dari halaman web.
Pembantu WebMail
WebMail Helper memudahkan pengiriman email dari aplikasi web menggunakan SMTP (Simple Mail transfer Protocol).
Skenario: Dukungan Email
Untuk mendemonstrasikan penggunaan email, kami akan membuat halaman input untuk dukungan, membiarkan pengguna mengirimkan halaman ke halaman lain, dan mengirim email tentang masalah dukungan.
Pertama: Edit Halaman Awal Aplikasi Anda
Jika Anda telah membangun aplikasi Demo dalam tutorial ini, Anda sudah memiliki halaman bernama _AppStart.cshtml dengan konten berikut:
_AppStart.cshtml
@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId",
"Email", true);
}
Untuk memulai pembantu WebMail, tambahkan properti WebMail berikut ke halaman AppStart Anda:
_AppStart.cshtml
@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId",
"Email", true);
WebMail.SmtpServer = "smtp.example.com";
WebMail.SmtpPort = 25;
WebMail.EnableSsl = false;
WebMail.UserName = "[email protected]";
WebMail.Password = "password-goes-here";
WebMail.From = "[email protected]";
}
Properti menjelaskan:
SmtpServer: Nama server SMTP yang akan digunakan untuk mengirim email.
SmtpPort: Port yang akan digunakan server untuk mengirim transaksi SMTP (email).
EnableSsl: Benar, jika server harus menggunakan enkripsi SSL (Secure Socket Layer).
UserName: Nama akun email SMTP yang digunakan untuk mengirim email.
Kata Sandi: Kata sandi akun email SMTP.
Dari: Email yang akan muncul di alamat dari (seringkali sama dengan Nama Pengguna).
Kedua: Buat Halaman Input Email
Kemudian buat halaman input, dan beri nama Email_Input:
Email_Input.cshtml
<!DOCTYPE html>
<html>
<body>
<h1>Request for
Assistance</h1>
<form method="post" action="EmailSend.cshtml">
<label>Username:</label>
<input type="text" name="customerEmail" />
<label>Details about the problem:</label>
<textarea name="customerRequest"
cols="45" rows="4"></textarea>
<p><input type="submit" value="Submit"
/></p>
</form>
</body>
</html>
Tujuan dari halaman input adalah untuk mengumpulkan informasi, kemudian mengirimkan data ke halaman baru yang dapat mengirimkan informasi tersebut sebagai email.
Ketiga: Buat Halaman Kirim Email
Kemudian buat halaman yang akan digunakan untuk mengirim email, dan beri nama Email_Send:
Email_Send.cshtml
@{ // Read input
var customerEmail = Request["customerEmail"];
var customerRequest = Request["customerRequest"];
try
{
// Send email
WebMail.Send(to:"[email protected]", subject: "Help request from - " + customerEmail, body:
customerRequest );
}
catch (Exception ex )
{
<text>@ex</text>
}
}
Referensi Objek WebMail - Properti
Properties | Description |
---|---|
SmtpServer | The name the SMTP server that will send the emails |
SmtpPort | The port the server will use to send SMTP emails |
EnableSsl | True, if the server should use SSL encryption |
UserName | The name of the SMTP account used to send the email |
Password | The password of the SMTP account |
From | The email to appear in the from address |
Referensi Objek WebMail - Metode
Method | Description |
---|---|
Send() | Sends an email message to an SMTP server for delivery |
Metode Send() memiliki parameter berikut:
Parameter | Type | Description |
---|---|---|
to | String | The Email recipients (separated by semicolon) |
subject | String | The subject line |
body | String | The body of the message |
Dan parameter opsional berikut:
Parameter | Type | Description |
---|---|---|
from | String | The email of the sender |
cc | String | The cc emails (separated by semicolon) |
filesToAttach | Collection | Filenames |
isBodyHtml | Boolean | True if the email body is in HTML |
additionalHeaders | Collection | Additional headers |
Data teknis
Name | Value |
---|---|
Class | System.Web.Helpers.WebMail |
Namespace | System.Web.Helpers |
Assembly | System.Web.Helpers.dll |
Menginisialisasi Pembantu WebMail
Untuk menggunakan pembantu WebMail, Anda memerlukan akses ke server SMTP. SMTP adalah bagian "keluaran" dari email. Jika Anda menggunakan web host, Anda mungkin sudah mengetahui nama server SMTP. Jika Anda bekerja di jaringan perusahaan, departemen TI Anda dapat memberi Anda nama tersebut. Jika Anda bekerja di rumah, Anda mungkin dapat menggunakan penyedia email biasa.
Untuk mengirim email, Anda memerlukan:
- Nama server SMTP
- Nomor port (paling sering 25)
- Nama pengguna email
- Kata sandi email
Di root web Anda, buat halaman (atau edit halaman ) bernama _AppStart.cshtml .
Masukkan kode berikut di dalam file:
_AppStart.cshtml
@{
WebMail.SmtpServer = "smtp.example.com";
WebMail.SmtpPort = 25;
WebMail.EnableSsl = false;
WebMail.UserName = "[email protected]";
WebMail.Password = "password";
WebMail.From = "[email protected]"
}
Kode di atas akan berjalan setiap kali situs web (aplikasi) dimulai. Ini memberi makan Objek WebMail Anda dengan nilai awal.
Silakan ganti:
smtp.example.com dengan nama server SMTP yang akan digunakan untuk mengirim email.
25 dengan nomor port yang akan digunakan server untuk mengirim transaksi SMTP (email).
false dengan true, jika server harus menggunakan enkripsi SSL (Secure Socket Layer).
[email protected] dengan nama akun email SMTP yang digunakan untuk mengirim email.
kata sandi dengan kata sandi akun email SMTP.
john@example dengan email yang akan muncul di alamat dari.
Anda tidak harus memulai objek WebMail di file AppStart, tetapi Anda harus menyetel properti ini sebelum memanggil metode WebMail.Send() .