Member 8010354 Ответов: 1

Как отправить электронное письмо с другим телом, вызвав метод


Всем Привет,

У меня есть требование, когда мне нужно отправлять оповещения по электронной почте нескольким ресурсам. Эта часть программирования завершена. Здесь поворот, я использовал 2 обработчики событий для данной задачи (1. PreSave обработчики событий и 2. Обработчики Событии PostSave).

Я разделил логику отправки кода электронной почты на один метод в (Email. cs) и вызов этого метода на обеих страницах обработчика событий (PreSave.cs и PostSave.cs).

Но мое требование заключается в том, что я должен отправить электронное письмо от обоих обработчиков событий, но при использовании PreSAve я хочу, чтобы тело было как STUDENTID, поля имени студента и значения полей, а когда я использую PostSave, я хочу, чтобы STUDENT_COURSE и STUDENT_PERCENTAGE были в теле.
Пожалуйста, помогите мне, как это сделать? Любая помощь будет оценена по достоинству.

Ниже приведен код строки, с которой я столкнулся (эта строка находится в PreSAve и PostSave. cs):

EmailMethod.SendMail(это.Имя, вот это.Фамилия", здесь я хочу добавить о теле письма");

Что я уже пробовал:

Я попытался создать параметр (Name: String BODY) в файле EmailMethod.cs. Но я не уверен, как войти в поля между телами?

Madhu Nair

Вы можете передать содержимое почты в формате html или в виде обычного текста в параметр BODY.

Member 8010354

Я ничего не понимал. Не могли бы Вы уточнить этот момент?

Madhu Nair

можете ли вы опубликовать метод, который вы используете для отправки почты?

Member 8010354

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

Madhu Nair

Пожалуйста, опубликуйте весь код, написанный в методе
EmailMethod.программа sendmail

Nayan Ambaliya

Используйте идентификаторы в параметре основного текста;
Пример
Это PRESAVE письмо с {{STUDENTID}} и {{STUDENTNAME}} и заменить {{}} с соответствующими параметрами
и то же самое происходит с POST SAVE (имеют разные идентификаторы для переменных.
Вы также можете достичь этого с помощью String.Формат(" {0}, {1}, содержимое электронной почты", StudentID, StudentName); но это будет работать только в том случае, если у вас есть одинаковые электронные письма с различными переменными. Я думаю, что первый вариант сработает для вас.

1 Ответов

Рейтинг:
2

Ehsan Skardu

Привет
Поместите свой шаблон электронной почты в любой текстовый файл. с некоторой переменной, такой как ~Name~, ~Address~ и т. д.; прочитайте ее и замените переменную такими значениями, как

private string GetBody(string FilePath,string Name,string Address)
{

  Return File.ReadAllTexT(FilePath).Replace("~Name~",Name).Replace("~Address~",Address);
}