运用MailMessage 发送邮件时,邮件内容带图片问题

 

PatternImageInBody = @"<img\s*src=""(\.\.)?/files/images/\d+/({#filename})""\s*/>";

 

 for (int i = 0; i < imagesInBody.Count; i++)
            {
                string pattern = patternImageInBody.Replace("{#filename}", Regex.Escape(Path.GetFileName(imagesInBody[i]).ToLower()));
                if (Regex.IsMatch(Email.Body,pattern, RegexOptions.IgnoreCase))
                {
                    System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(imagesInBody[i]);
                    Email.Attachments.Add(attachment);
                    Email.Body = Regex.Replace(Email.Body, pattern, "<img src=\"cid:" + attachment.ContentId + "\"/>", RegexOptions.IgnoreCase);
                }
            }

 

主要是将邮件内容的HTML标识<img.../> 重新替换成红色部分,这样图片就可以作为附件附加在邮件上

posted @ 2012-05-19 17:12  Yu  阅读(1184)  评论(0编辑  收藏  举报