Отправить письмо
Элемент отправляет новое письмо из почтового ящика Microsoft 365. Отправленное письмо сохраняется в папке «Отправленные». Для корректной работы следует поместить элемент в контейнер Microsoft 365.
Свойства
Описание общих свойств элемента см. в разделе Свойства элемента .
Символ * в названии свойства указывает на обязательность его заполнения.
| Свойство | Тип | Описание |
|---|---|---|
| Аккаунт: | ||
| Учетная запись | String | Ящик, из которого отправляется письмо, например "robot@company.ru". Если не заполнено — ящик пользователя, под которым выполнен вход. При входе по сертификату или секрету обязательно |
| Вложения: | ||
| Вложения | List<String> | Пути к файлам вложений, например new List<string> { @"C:\Reports\report.xlsx" } |
| Параметры: | ||
| Важность | - | Важность письма. Доступные значения: Low, Normal, High. По умолчанию Normal |
| От | String | Адрес отправителя, если он отличается от Учетной записи. Требует прав «Отправить как» или «Отправить от имени» на этот адрес |
| Ответ | List<String> | Адреса, на которые получатели будут отправлять ответ |
| HTML | Boolean | Признак HTML-содержимого письма. По умолчанию выключено |
| Черновик | Boolean | Признак черновика |
| Получатели: | ||
| Кому* | List<String> | Адреса получателей, например new List<string> { "user@company.ru" } |
| Копия* | List<String> | Адреса получателей копии |
| Скрытая копия* | List<String> | Адреса получателей скрытой копии |
| Сообщение: | ||
| Тема | String | Тема письма |
| Текст | String | Содержимое письма — обычный текст или HTML в зависимости от свойства HTML |
Примечание: Из свойств Кому, Копия, Скрытая копия должно быть заполнено хотя бы одно.
Важно: Суммарный размер вложений не должен превышать 3 МБ. Большие файлы выкладывайте в OneDrive или SharePoint и отправляйте ссылку — см. элемент Поделиться файлом или папкой.
Практические примеры
Пример 1: уведомление о завершении работы
- Учетная запись:
"robot@company.ru" - Кому:
new List<string> { "manager@company.ru" } - Тема:
"Робот завершил обработку" - Текст:
"Обработано заявок: " + count.ToString()
Пример 2: HTML-отчет нескольким получателям с копией
- Кому:
new List<string> { "a.ivanov@company.ru", "p.petrov@company.ru" } - Копия:
new List<string> { "boss@company.ru" } - Важность:
High - HTML: включено
- Тема:
"Отчет за " + DateTime.Today.ToString("dd.MM.yyyy") - Текст:
"<p>Добрый день!</p><p>Итого: <b>" + total + "</b></p>"
Пример 3: получатели из строки
Если адреса хранятся в строке через точку с запятой, в свойство Кому можно передать выражение:
recipients.Split(';').Select(s => s.Trim()).Where(s => s != "").ToList()Пример 4: ответы на общий адрес
- Учетная запись:
"robot@company.ru" - Ответ:
new List<string> { "support@company.ru" }
Получатель увидит отправителем робота, а ответ на письмо уйдет на support@company.ru.
Возможные ошибки
| Ошибка | Причина и решение |
|---|---|
Не указаны ни Кому, ни Копия, ни Скрытая копия | Не заполнено ни одно из свойств получателей |
Could not find file ... | Неверный путь к файлу в свойстве Вложения |
Access is denied | Не заполнена Учетная запись при входе от имени приложения или не выдано разрешение Mail.Send |