Перейти к содержанию

Отправка Email в Asp.Net Core

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 5,00 из 5)
Загрузка...

[ Полезный рекламный блок ]

Попробуйте свои силы в игре, где ваши навыки программирования на C# станут решающим фактором. Переходите по ссылке 🔰.


В этой статье, мы рассмотрим процесс отправки Email в Asp.Net Core приложении. Для отправки email мы будем использовать библиотеку почтового клиента MailKit.

Я ожидаю от вас знания концепций объектно-ориентированного программирования на C#. Я предполагаю, что вы также знаете концепции .NET Core, особенно паттерн MVC.

Отправка Email в Asp.Net Core

  1. Создание проекта
  2. Отправка письма
  3. Отправка письма с вложением

Чтобы писать вместе со мной, вам придется установить .NET Core 2.2, а также Visual Studio 2017-2022. Вы также можете использовать другую IDE вместо Visual Studio.

Создание проекта

Откройте Visual Studio 2022. Создайте проект «Asp.Net Core Web Application (.Net Core)» с шаблоном MVC. Вы можете назвать этот проект как угодно.

создание проекта asp.net core

Теперь мы установим зависимости, если они еще не установлены в вашей IDE:

  • MailKit
  • MimeKit

asp net core mailkit

После установки библиотеки Mailkit, перейдем к контроллеру HomeController, чтобы реализовать почтовую функциональность.

Отправка письма

Для отправки письма в Asp.Net Core, мы можем обойтись только действиями и представлениями. В контроллере HomeController, добавим действие Email, со следующим содержимым:

Не забудьте вверху файла подключить необходимые пространства имен:

  • using MimeKit;
  • using MailKit.Net.Smtp;

Вместо FromEmail@rambler.ru, укажите свой е-мейл адрес, так же добавьте ваш пароль от электронной почты.

С мая 2022 года, компания Google прекратила поддержку внешних устройств, на прямую.

Для отправки письма необходимо получить “пароль приложения”, или же использовать любой другой smtp клиент, к примеру – Rambler.

Рассмотрим, как получить пароль приложения, для отправки письма через Google Smtp.

  1. Откройте страницу Аккаунт Google: https://myaccount.google.com/
  2. Нажмите Безопасность.
  3. В разделе «Вход в аккаунт Google» выберите Пароли приложений. При необходимости выполните вход (этот параметр недоступен, если двухэтапная аутентификация не настроена для вашего аккаунта).
  4. В нижней части страницы нажмите Приложение и выберите нужный вариант затем нажмите Устройство и укажите модель затем — Создать.
  5. Теперь сохраните сгенерированный пароль в файл или сразу добавьте в код приложения:

пароль приложения google

Создадим представление, переходим в папку ViewsHomeAdd ViewEmail.cshtml:

asp.net core mvc email.cshtml

Содержимое представления достаточное простое:

Теперь запустим приложение, перейдем по следующему адресу:

https://localhost:XXXX/Home/Email

где XXXX – это номер порта. После выполнения, проверим почту получателя.

отправка письма на почту asp.net core mvc

Итак, мы успешно отправили письмо, теперь отправка Email в Asp.Net Core приложениях кажется не такой трудной задачей.

Отправка письма с вложением

Если вы хотите отправить письмо с вложением, просто добавьте следующий код в HomeController:

Вкратце рассмотрим вышеприведенный код.  Здесь я  использовал действие – EmailAttachment, в HomeController, для отправки почты с вложением в виде файла pdf формата (это может быть любой другой файл). Убедитесь что в папке wwwroot, находится файл для отправки:

asp.net core mvc wwwroot files

Теперь запустим приложение, перейдем по следующему адресу:

https://localhost:XXXX/Home/EmailAttachment

где XXXX – это номер порта. После успешного выполнения, проверьте почту, результат отправки письма, выглядит примерным образом:

отправка письма через mailkit

Итак, вы успешно отправили письмо с вложением. Надеюсь, вам понравилась эта статья. Вы можете скачать исходный код в моем репозитории — Github.

Поделитесь вашим опытом в комментариях, как вы  выполняете отправку Email в Asp.Net Core приложениях?

Так же вам может быть интересна предыдущая статья — Google Авторизация c Identity.

Вы начинающий программист, который хочет изучить все тонкости языка C#?

Пройдите наш тест на 13 вопросов, чтобы узнать, как много вы знаете на самом деле!

C# Braincheck


Вы хотите научится писать код на языке программирования C#?

Создавать различные информационные системы, состоящие из сайтов, мобильных клиентов, десктопных приложений, телеграмм-ботов и т.д.

Переходите к нам на страницу Dijix и ознакомьтесь с условиями обучения, мы специализируемся только на индивидуальных занятиях, как для начинающих, так и для более продвинутых программистов. Вы можете взять как одно занятие для проработки интересующего Вас вопроса, так и несколько, для более плотной работы. Благодаря личному кабинету, каждый студент повысит качество своего обучения, в вашем распоряжении:

  • Доступ к пройденному материалу
  • Тематические статьи
  • Библиотека книг
  • Онлайн тестирование
  • Общение в закрытых группах

https://dijix.com.ua

Живи в своем мире, программируй в нашем.


 

Опубликовано в рубрикеAsp.Net Core
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x