Jag har en enkel sida som jag använder som en bugreport för ett intranet, där finns möjlighet att skicka med en fil och jag använder mig av fileupload, sedan genereras ett mail till berörd person som skall ha denna bugrapport. Den enda lösningen som jag har är att först mellanlagra den medskickade filen på disk och sedan lägga med den som ett attachment i mailet som genereras. Finns det något sätt att göra så att jag inte behöver mellanlagra filen på disk utan bara hålla den i minnet och sedan bara skicka med den som attached fil i mailet. Attachment tar ju en stream som argument så då borde du väl kunna skriva.Fileupload
Här är en del av min kod:
Först sparar jag filen så här:
If FileUpload1.HasFile Then
Dim fileName As String = FileUpload1.FileName
' Append the name of the file to upload to the path.
savePath += "healthreport.rtf"
FileUpload1.SaveAs(savePath)
'arr = FileUpload1.FileBytes
'filestream = FileUpload1.FileContent
End If
sedan skickar jag med filen i mailet så här:
If FileUpload1.HasFile Then
Dim myAttachment As Attachment = New Attachment(savePath)
mailMessage.Attachments.Add(myAttachment)
'mailMessage.Attachments.Add(filestream)
End If
och slutligen så raderar jag filen från disk.
Detta fungerar men jag skulle vilja slippa mellanlagringen.Sv: Fileupload
Dim myAttachment As Attachment = New Attachment(FileUpload1.FileContent,MediaTypeNames.Application.Rtf)
mailMessage.Attachments.Add(myAttachment)