Comment faire pour attacher une pièce jointe à un formulaire d'envoi en asp.net
Bonjour,
Voici deux exemple de code en vb.net
1/Le code d'un formulaire d'envoi simple , san pièce jointe, et qui ne me pose aucune difficulté.(C'est-à-dire qui fonctionne bien)
2/le code du même formulaire qu'en 1/ , mais avec un fragment de code pour l'envoi d'une pièce jointe simultanée etpour lequel j'ai des difficultés
Code1
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| Imports System.Net.Mail
Protected Sub btnEnvoyer_Click(sender As Object, e As System.EventArgs) Handles btnEnvoyer.Click
Me.Validate()
If Me.IsValid Then
Try
Dim monMessage As New System.Net.Mail.MailMessage(monsite@free.fr", "contact@modomaine.fr")
monMessage.Subject = "[Vos Remarques et infos ] Contact"
monMessage.Body = "[Contact Transmis par le site Web]" _
& vbCr & lblObjet.Text & txtObjet.Text _
& vbCr & lblNom.Text & txtNom.Text.ToUpper _
& vbCr & lblPrenom.Text & txtPrenom.Text _
& vbCr & lblAge.Text & dplAge.Text _
& vbCr & lblCivilite.Text & dplCivilite.Text _
& vbCr & lblMail.Text & txtMail.Text _
& vbCr & lblTel.Text & txtTel.Text _
& vbCr & lblCP.Text & txtCP.Text _
& vbCr & lblVille.Text & txtVille.Text _
& vbCr & lblAdresse.Text & txtAdresse.Text _
& vbCr & lblCommentaire.Text & txtCommentaire.Text
'Envoi du message
Dim smtp As New SmtpClient
Me.pnlConfirmation.Controls.Add(New LiteralControl(smtp.Host))
smtp.Host = "localhost"
smtp.Send(monMessage)
Catch ex As Exception
lblMessageErreur.Text = "La page a rencontré une erreur.Vos données n'ont pas été envoyées !"
End Try
End If
Me.pnlMessage.Visible = False
Me.pnlConfirmation.Visible = True |
Code 2 avec essai de pièce jointe:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| Imports System.Net.Mail
Protected Sub btnEnvoyer_Click(sender As Object, e As System.EventArgs) Handles btnEnvoyer.Click
Me.Validate()
If Me.IsValid Then
Try
Dim monMessage As New System.Net.Mail.MailMessage(monsite@free.fr", "contact@modomaine.fr")
monMessage.Subject = "[Vos Remarques et infos ] Contact"
monMessage.Body = "[Contact Transmis par le site Web]" _
& vbCr & lblObjet.Text & txtObjet.Text _
& vbCr & lblNom.Text & txtNom.Text.ToUpper _
& vbCr & lblPrenom.Text & txtPrenom.Text _
& vbCr & lblAge.Text & dplAge.Text _
& vbCr & lblCivilite.Text & dplCivilite.Text _
& vbCr & lblMail.Text & txtMail.Text _
& vbCr & lblTel.Text & txtTel.Text _
& vbCr & lblCP.Text & txtCP.Text _
& vbCr & lblVille.Text & txtVille.Text _
& vbCr & lblAdresse.Text & txtAdresse.Text _
& vbCr & lblCommentaire.Text & txtCommentaire.Text
Code pièce jointe
'Déclaration d'une nouvelle instance du contrôle FileUpload
Dim flp As New FileUpload
'Ajouter le chemin du fichier à joindre dans le contrôle obtenu par le bouton parcourir
Dim Origine As String = Me.MapPath("")
Origine &= flp.FileName
Dim msg As New System.Net.Mail.Attachment(Origine)
ici je suis bloqué et ne sais plus quoi écrire
'Envoi du message
Dim smtp As New SmtpClient
Me.pnlConfirmation.Controls.Add(New LiteralControl(smtp.Host))
smtp.Host = "localhost"
smtp.Send(monMessage)
Catch ex As Exception
lblMessageErreur.Text = "La page a rencontré une erreur.Vos données n'ont pas été envoyées !"
End Try
End If
Me.pnlMessage.Visible = False
Me.pnlConfirmation.Visible = True |