0

指定问题:我正在创建一个位图对象,我想用电子邮件发送它。我不想先保存它或将其上传到网络服务器。只需附加它,然后将附件链接到邮件的 html 正文中。我已经搜索了很长时间,我能找到的只是图片存储在文件系统或服务器上的答案。

那么有什么方法可以在不保存图像的情况下做到这一点?

谢谢

编辑:我尝试了一下,终于找到了这个解决方案:

            MailMessage mail = new MailMessage();
            mail.To.Add(new MailAddress("xxx@yyy.de"));
            mail.From = new MailAddress("xxx@yyy.de");
            SmtpClient sender = new SmtpClient
            {
                Host = "smtp.client",
                Port = 25
            };
            mail.Subject = "test";

            body= "blablabla<br><img alt=\"\" hspace=0 src=\"cid:ImagedId\" align=baseline border=0 ><br>blablabla";
            AlternateView htmlView = AlternateView.CreateAlternateViewFromString(body, null, "text/html");

            using (System.IO.MemoryStream image = new System.IO.MemoryStream())
            {
                Bitmap diagram = new Bitmap("C:\\qwer.bmp");
                diagram.Save(image, System.Drawing.Imaging.ImageFormat.Jpeg);
                LinkedResource resource = new LinkedResource(image, "image/jpeg");
                resource.ContentId = "ImageId";
                resource.TransferEncoding = System.Net.Mime.TransferEncoding.Base64;
                htmlView.LinkedResources.Add(resource);
                mail.AlternateViews.Add(htmlView);

                sender.Send(mail);
            }

但是现在我的 MailClient (Lotus Notes) 没有打开带有错误的邮件:“没有 mime 数据”。任何想法如何解决这个问题?

4

1 回答 1

0

尝试在 Word 中创建它(只是图像或整个电子邮件),然后将其拖动并复制并粘贴到 Outlook 中。我认为自动附加图像以及嵌入它们。

于 2013-05-03T05:49:56.663 回答