Envoyer des courriels en HTML via C# avec SmtpClient
Comment puis-je envoyer un e-mail en HTML? J'ai utiliser le code dans cette réponse pour envoyer des emails avec SmtpClient
, mais ils sont toujours en texte brut, donc le lien dans le message d'exemple ci-dessous n'est pas formaté en tant que tel.
<p>Welcome to SiteName. To activate your account, visit this URL: <a href="http://SiteName.com/a?key=1234">http://SiteName.com/a?key=1234</a>.</p>
Comment puis-je activer le HTML dans les messages e-mail que j'envoie?
- ropstah: TBH j'étais confus et écrit dans un de vos commentaires qu'il n'est pas IsBodyHtml dans SmtpClient. Josias est qui m'a montré à faire avec MailMessage.
Vous devez vous connecter pour publier un commentaire.
C'est ce que je fais:
Note que j'ai mis le message électronique html pour vrai:
mail.IsBodyHtml = true;
MailMessage
etSmtpClient
mettre en œuvreIDisposable
, et doivent être éliminés en conséquence.Je crois que c'était quelque chose comme:
IsBodyHtml = true
est sans aucun doute la partie la plus importante.Mais si vous voulez fournir une adresse email avec un text/plain cadre et un texte/html partie composé, à titre de suppléants, il est également possible à l'aide de la
AlternateView
classe:AlternateView
pourhtmlView
vraiment nécessaire? Parce que vous avez déjà mis le corps à êtrehtmlText
. N'est-il pas inutile de les définir en tant que suppléant de la vue?Appliquer l'encodage correct de la Mailbody.
j'ai une idée , vous pouvez ajouter une case à cocher à votre projet pour l'envoi de courriels au format html comme une possibilité pour l'utilisateur , et ajouter ce code pour l'activer :
Si vous utilisez Mailkit,Nous pouvons utiliser le corps texte,HtmlBody et à la Fois pour le corps du message. Il suffit d'écrire ce code. Il vous aidera à