ASP.NET Web Pages - WebMail Helper


WebMail Helper — один из многих полезных веб-помощников ASP.NET.


WebMail Helper

WebMail Helper упрощает отправку электронных писем, позволяя отправлять письма из веб-приложения в соответствии с SMTP (Simple Mail Transfer Protocol).


Предварительное условие: поддержка электронной почты

Чтобы продемонстрировать, как использовать электронную почту, мы создадим страницу ввода, которая позволяет пользователям отправлять страницу на другую страницу и отправлять электронное письмо по вопросам поддержки.


Сначала: отредактируйте свою страницу AppStart

Если вы создали демонстрационное приложение в этом руководстве, у вас уже есть страница с именем _AppStart.cshtml и следующим содержимым:

_AppStart.cshtml

@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", true);
}

Чтобы запустить помощник WebMail, добавьте свойства WebMail, показанные ниже, на свою страницу AppStart:

_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]";

}

Пояснения к свойствам:

SmtpServer:Имя SMTP-сервера, используемого для отправки электронной почты.

SmtpPort:Порт, который сервер использует для отправки SMTP-транзакций (электронной почты).

EnableSsl:Если сервер использует шифрование SSL (Secure Socket Layer), значение — true.

UserName:Имя учетной записи электронной почты SMTP, используемой для отправки электронной почты.

Password:Пароль для учетной записи электронной почты SMTP.

From:Адрес электронной почты, отображаемый в поле адреса отправителя (обычно совпадает с UserName).


Второе: Создание страницы ввода электронной почты

Далее создайте страницу ввода и назовите ее Email_Input:

Email_Input.cshtml

<!DOCTYPE html>
<html>
<body>
<h1>Запрос на помощь</h1>

<form method="post" action="EmailSend.cshtml">
<label>Имя пользователя:</label>
<input type="text name="customerEmail" />
<label>Подробности о проблеме:</label>
<textarea name="customerRequest" cols="45" rows="4"></textarea>
<p><input type="submit" value="Отправить" /></p>
</form>

</body>
</html>

Цель страницы ввода — собрать информацию, а затем отправить данные на новую страницу, которая может отправить эту информацию по электронной почте.


Третье: создайте страницу отправки электронной почты

Затем создайте страницу для отправки электронной почты и назовите её Email_Send:

Email_Send.cshtml

@{ // Чтение входных данных
var customerEmail = Request["customerEmail"];
var customerRequest = Request["customerRequest"];
try
{
// Отправка электронной почты
WebMail.Send(to:"[email protected]", subject: "Запрос помощи от - " + customerEmail, body: customerRequest );
}
catch (Exception ex )
{
<text>@ex</text>
}
}

Для получения дополнительной информации об отправке электронной почты в приложениях ASP.NET Web Pages см.:Справочное руководство по объекту WebMail。


Другие расширения