Attaching Image in the body of mail in C#

后端 未结 3 1671
一向
一向 2020-12-01 19:13

How can I attach an image in the body content . I have written the below code

System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
string         


        
3条回答
  •  谎友^
    谎友^ (楼主)
    2020-12-01 20:06

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Net;
    using System.IO;
    using System.Net.Mime;
    using System.Net.Mail;
    
    
    namespace ItsTrulyFree
    {
        public partial class demo_mail : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
        enter code here
            }
            protected void btnSubmit_Click(object sender, EventArgs e)
            {
    
    
                    MailMessage Msg = new MailMessage();
                    // Sender e-mail address.
                    Msg.From = new MailAddress(txtUsername.Text);
                    // Recipient e-mail address.
                    Msg.To.Add(txtTo.Text);
                    Msg.Subject = txtSubject.Text;
                    // File Upload path
                    String FileName = fileUpload1.PostedFile.FileName; 
    
    
                    string mailbody = txtBody.Text + "
    "; //LinkedResource LinkedImage = new LinkedResource(FileName); //HttpContext.Current.Server.MapPath("/UploadedFiles"); LinkedResource LinkedImage = new LinkedResource(Server.MapPath("~//" + FileName), "image/jpg"); LinkedImage.ContentId = "MyPic"; //Added the patch for Thunderbird as suggested by Jorge LinkedImage.ContentType = new ContentType(MediaTypeNames.Image.Jpeg); AlternateView htmlView = AlternateView.CreateAlternateViewFromString(mailbody+ " ", null, "text/html"); htmlView.LinkedResources.Add(LinkedImage); Msg.AlternateViews.Add(htmlView); SmtpClient smtp = new SmtpClient(); smtp.Host = "smtp.gmail.com"; smtp.Port = 587; smtp.Credentials = new System.Net.NetworkCredential(txtUsername.Text, txtpwd.Text); smtp.EnableSsl = true; smtp.Send(Msg); Msg = null; Page.RegisterStartupScript("UserMsg", ""); } //catch (Exception ex) //{ // Console.WriteLine("{0} Exception caught.", ex); //} } }

提交回复
热议问题