Как XaiSoft указал, что вы используете string.Format()
неправильно, замените:
message.Body = "<html>" + string.Format(EmailBody, YourNameBox.Text, PersonalNoteBox.Text) + "</html>";
на:
message.Body = string.Format(@"<html>{0}<br /><br />{1}<br /><br />{2}</html>",
EmailBody, YourNameBox.Text, PersonalNoteBox.Text)
Если YourNameBox.Text
и PersonalNoteBox.Text
не обязательны, выв конце вашего письма вы получите 4 дополнительных перевода строки.Если это является какой-то проблемой, вы всегда можете сделать это тоже:
var name = string.IsNullOrEmpty(YourNameBox.Text)
? string.Empty
: string.Format(@"<br /><br />{0}", YourNameBox.Text);
var personalNote = string.IsNullOrEmpty(YourNameBox.Text)
? string.Empty
: string.Format(@"<br /><br />{0}", PersonalNoteBox.Text);
message.Body = string.Format(@"<html>{0}{1}{2}</html>", EmailBody, name, personalNote);
РЕДАКТИРОВАТЬ
Также обратите внимание на символ @
, используемый в строках формата.Это будет трактовать вашу строку как литерал, игнорируя любые escape-символы, которые также могут быть причиной вашей проблемы.