Question

im creating a web form that requires a user to uplaod a file in doc,docxorpdf format on submit the form gets posted to an email address along with the attached file, ihave successfully implemented the posting of form to the email address but don't know how to attach the file with it ... plz help

 public void ProcessRequest(HttpContext context)
        {
            string template = context.Request["template"];

            string responseHtml = BuiltTemplateHtml(context.Request, template, "response", false);
            string reuestEmailHtml = BuiltTemplateHtml(context.Request, template, "request_email", false);
            string contactEmail = GetTagsInnerText(reuestEmailHtml, "to", 0);
            string contactName = GetTagsInnerText(reuestEmailHtml, "toname", 0);

            string responEmailHtml = BuiltTemplateHtml(context.Request, template, "response_email", true, "contactName", contactName, "contactEmail", contactEmail);



            sendEmail(reuestEmailHtml);
            sendEmail(responEmailHtml);
            context.Response.ContentType = "text/html";
            context.Response.Write(responseHtml);

            SaveAttachments(context, reuestEmailHtml);

        }

        private void SaveAttachments(HttpContext context, string settingFile)
        {
            if (context.Request.Files.Count > 0)
            {
                string fileNameformat = GetTagsInnerText(settingFile, "fileNameformat", 0);
                string[] savefiles = GetTagsInnerText(settingFile, "savefiles", 0).Split('|', ',');
               string[] allowextensions = GetTagsInnerText(settingFile, "allowextensions", 0).Split('|', ',');                





                string path = cleanPath(fileNameformat);

                MailMessage mail = new MailMessage();

             // attachment code here









            }
        }
Was it helpful?

Solution

Check this out,

// Create  the file attachment for this e-mail message.
            Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
            // Add time stamp information for the file.
            ContentDisposition disposition = data.ContentDisposition;
            disposition.CreationDate = System.IO.File.GetCreationTime(file);
            disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
            disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
            // Add the file attachment to this e-mail message.
            message.Attachments.Add(data);

and check this link on msdn for more information, http://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.attachments.aspx

OTHER TIPS

The MailMessage class has an Attachments property which could be used to add attachments to the message.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top