Я лично не пробовал, но в соответствии с этим вам нужно только:
subject = subject.Replace('\r', ' ').Replace('\n', ' ');
или что-то эквивалентное.
Внутренне, MailMessage
класс проверит предмет с помощью:
if (value != null && MailBnfHelper.HasCROrLF(value))
{
throw new ArgumentException(SR.GetString(SR.MailSubjectInvalidFormat));
}
Таким образом, единственным ограничением (на данный момент) является наличие CR
или LF
.