撰写发送带有嵌入式资源的html邮件

来源:互联网 发布:农村教育问题 知乎 编辑:程序博客网 时间:2024/05/16 06:13

撰写并发送html邮件,其中图片或视频等资源不是以附件形式,而是直接嵌入到内容里,可以使用下面所示的代码。 

MailMessage message = new MailMessage();
        message.Subject = "test embedded image in email";
        message.IsBodyHtml = true;
        message.From = new MailAddress("test@sina.com", "test");
        message.To.Add(new MailAddress("test@gmail.com"));
        StringBuilder sb = new StringBuilder();
        sb.Append("Hi,everyone");
        sb.Append("Welcome to new world of programming");
        sb.Append("Please see the images below");
        sb.Append("Thanks");

        AlternateView view = AlternateView.CreateAlternateViewFromString(sb.ToString(), null, "text/html");
        LinkedResource linked = new LinkedResource(Server.MapPath("Images/dscf0039.jpg"));
        linked.ContentId = "Image1";
        view.LinkedResources.Add(linked);

        message.AlternateViews.Add(view);

        SmtpClient client = new SmtpClient();
        client.Host = "smtp.sina.com.cn";
        client.Credentials = new System.Net.NetworkCredential("test123","*********");
        client.Send(message);