使用base64字符串的C#LinkedResource

Luc*_*tro 9 c# email base64

我怎么能把这个==> url('data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEASABIAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB')放进去new System.Net.Mail.LinkedResource()

使用带有base64字符串的后台css样式,而不是文件url,从C#发送邮件.

Ale*_*man 29

我自己想知道这件事,并得到了这篇文章.我解决了它,并认为我会分享我的解决方案.

var imageData = Convert.FromBase64String("/9j/4AAQSkZJRgABAgEASABIAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB");

var contentId = Guid.NewGuid().ToString();
var linkedResource = new LinkedResource(new MemoryStream(imageData), "image/jpeg");
linkedResource.ContentId = contentId;
linkedResource.TransferEncoding = TransferEncoding.Base64;

var body = string.Format("<img src=\"cid:{0}\" />", contentId);
var htmlView = AlternateView.CreateAlternateViewFromString(body, null, "text/html");
htmlView.LinkedResources.Add(linkedResource);
Run Code Online (Sandbox Code Playgroud)

  • 这个回应怎么没有被投票100次?谢谢!效果很好! (4认同)