Je travaille sur un site qui se chargera d'envoyer un nombre important d'e-mails. Je veux configurer l'en-tête et pied de page de texte, ou peut-être même des modèles pour permettre aux utilisateurs de modifier facilement ces e-mails si ils en ont besoin.
Si j'ai intégrer le code HTML à l'intérieur de C# littéraux de chaîne, c'est moche et qu'ils auraient à vous soucier de s'échapper. Y compris les fichiers plats pour l'en-tête et pied de page pourrait fonctionner, mais quelque chose ne fonctionne tout simplement pas.
Ce qui serait idéal, ce qui est d'utiliser un .ASPX
page comme un modèle en quelque sorte, puis il suffit de dire à mon code pour servir à cette page et utilisez le code HTML retourné pour l'e-mail.
Est-il agréable et facile de faire cela? Est-il une meilleure façon d'aller sur la résolution de ce problème?
Mise à jour:
J'ai ajouté une réponse qui vous permet d'utiliser une norme .page aspx comme le modèle d'e-mail. Il suffit de remplacer toutes les variables comme vous le feriez normalement, l'utilisation de la liaison de données, etc. Puis il suffit de capturer la sortie de la page, et le tour est joué! Vous avez votre e-mail en HTML!
MIS À JOUR AVEC MISE EN GARDE!!!:
J'ai été en utilisant le MailDefinition classe sur certaines pages aspx très bien, mais lorsque j'essaie d'utiliser cette classe au cours d'un processus serveur qui a été en cours d'exécution, il a échoué. Je crois que c'était parce que le MailDefinition.CreateMailMessage() méthode qui nécessite un contrôle valide de référence, même si elle ne permet pas toujours de faire quelque chose. De ce fait, je recommande mon approche à l'aide d'une page aspx, ou Mun de l'approche à l'aide d'un ascx page, ce qui semble un peu mieux.