使用base64字符串的C#LinkedResource

如何将此==> url('data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEASABIAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB')放入new System.Net.Mail.LinkedResource()

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

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

 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("", contentId); var htmlView = AlternateView.CreateAlternateViewFromString(body, null, "text/html"); htmlView.LinkedResources.Add(linkedResource);