На моем внешнем интерфейсе я использую Vuetify, который представляет собой инфраструктуру пользовательского интерфейса VueJS, которая использует поле со списком для тела ввода электронной почты. Пользователь может редактировать его, а что нет. Сначала я предварительно заполнил его прогнозируемым текстом этой формы:
textModel = "To whom it may concern, \n\n" +
"We are writing to you about blah blah blah. \n\n" +
"Thank You"
Затем эти данные отправляются на серверный API через [FormData] и привязываются к модели, поскольку они являются частью большой модели электронной почты (тема, получатели и т. д.). Однако для моего интерфейса электронной почты я использую следующее, чтобы назначить тело объекту сообщения:
var message = new Message
{
Subject = email.Subject,
Body = new ItemBody
{
ContentType = Microsoft.Graph.BodyType.Html,
Content = email.Body,
},
ToRecipients = ToRec,
CcRecipients = CcRec,
BccRecipients = BccRec,
Attachments = attachments,
};
Когда я отправляю электронное письмо через API MS Graph и получаю электронное письмо, тело форматируется как одна строка, поэтому «\n» ничего не делает. Как бы я таким образом учитывал новые строки для использования во внешнем и внутреннем интерфейсе? Должен ли я найти и заменить строку тела и заменить теги br в html?
Спасибо
Что вы пытаетесь отправить
textModel = "To whom it may concern, \n\n" +
"We are writing to you about blah blah blah. \n\n" +
"Thank You"
форматированный текст, но в
Body = new ItemBody
{
ContentType = Microsoft.Graph.BodyType.Html,
Content = email.Body,
},
вы говорите, что тело - это Html, если вы хотите отправить текстовое тело, вы должны сделать это
Body = new ItemBody
{
ContentType = Microsoft.Graph.BodyType.Text,
Content = email.Body,
},
или отформатируйте текст как html, например,
textModel = "To whom it may concern, <br>" +
"We are writing to you about blah blah blah. <br><br>" +
"Thank You<br>"
Вау я тупой. Я подумал о том, чтобы попробовать текст, но не стал, потому что решил, что это сработает.