Question

J'utilise la fonctionnalité de errorMail Elmah pour envoyer un e-mail lorsque ASP.NET rencontre une erreur. Il vous permet de configurer les paramètres SMTP ainsi que coder en dur un expéditeur, le destinataire et le sujet.

Ma question est: puis-je utiliser un sujet dynamique ? Plus précisément, je voudrais utiliser la propriété Exception.Message comme sujet, afin que je puisse dire ce que l'erreur est sur le pas de la ligne d'objet du courriel.

Il n'y a pas de documentation et d'une analyse rapide du code source, il semble impossible sans modifier le code, mais je pensais que je poserais la question de toute façon.

Code source pertinente:

Était-ce utile?

La solution

Doh! La réponse est en ligne 454 de ErrorMailModule.cs :

string subjectFormat = Mask.EmptyString(this.MailSubjectFormat, "Error ({1}): {0}");
mail.Subject = string.Format(subjectFormat, error.Message, error.Type)
                .Replace('\r', ' ')
                .Replace('\n', ' ');

Vous pouvez utiliser {0} pour le message et {1} pour le type.

Autres conseils

J'ai changé le sujet de courrier électronique à partir du fichier web.config de cette façon:

<errorMail from="..." subject="Some subject: {0}">

où {0} sera le message d'exception.

Vous pouvez consulter cet article pour plus de détails http://weblogs.asp.net/jeffwids/format-the-email-subject-in-the-elmah-error-logging-module

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top