Générer un fichier temporaire et l'envoyer dans un mail

nindy13 Messages postés 7 Date d'inscription mercredi 24 octobre 2007 Statut Membre Dernière intervention 20 décembre 2007 - 19 déc. 2007 à 08:38
nindy13 Messages postés 7 Date d'inscription mercredi 24 octobre 2007 Statut Membre Dernière intervention 20 décembre 2007 - 19 déc. 2007 à 09:35
Bonjour tout le monde,

Je dois générer un fichier html avec une partie de ma page en cours sans l'enregistrer sur le disque pour ensuite le joindre à un mail que je génère.

Actuellement j'ai réussi à récupérer le html de ma page dans un StringWriter

J'ai également pu générer le mail !

Il me manque l'étape du millieu c'est é dire créer un fichier html dans l'enregistrer sur le site et l'ajouter à l'option Attachment.Add() de mon mail !

Mais la je sèche !!

Est-ce que quelqu'un a une idée ??

Merci d'anvance
Cindy

2 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
19 déc. 2007 à 09:24
Bonjour,

ton Attachment a une proprieté je saisplusquoiStream (ContentStream de mémoire mais pas sur) c'est ici que tu lui donne le stream de ton fichier. Si tu as une String suffit de le convertir en Stream via un MemoryStream.

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant
0
nindy13 Messages postés 7 Date d'inscription mercredi 24 octobre 2007 Statut Membre Dernière intervention 20 décembre 2007
19 déc. 2007 à 09:35
Je ne te suits pas !

J'ai actuellement le code suivant qui me permet de récupérer un bout du html de ma page
Dim

sw
As
New System.IO.StringWriter()

Dim htw
As
New HtmlTextWriter(sw)fichier.RenderControl(htw)

'avec LeControl, le control que vous avez bien sur instanci‚htw.Flush()

Ou fichier est le nom de ma division a récupérer dans la page html (ça sa fonctionne !)

J'ai la création de mail

Dim

mail
As
New MailMessage()

With mail.From = ConfigurationSettings.AppSettings(

"MailFrom").To = ConfigurationSettings.AppSettings(
"MailDestinataire").Subject "Demande Online".BodyFormat MailFormat.Html

.Priority = MailPriority.Normal

.Body = body  'body est une variable string ou je génère mon texte

End
With

Maintenant ma question c'est comment je fais pour que ma variable sw devienne un fichier html et l'ajouter à mon mail avec .Attachment.Add() sans enregistrer le fichier sur le disque !

J'espère que c'est plus claire ! car ta réponse ne m'éclaire pas beaucoup !

J'ai cherché de ce côté là !
Response.Clear()
Response.Buffer TrueResponse.ContentType

'je ne sais pas quoi mettre là pour faire du html !Response.Charset =

""Response.AddHeader(

"content-disposition",
"attachment;filename=test.html")

Et mettre dans l'attachment :
Response.Write(sw.ToString())

Merci d'avance
0
Rejoignez-nous