如何将MailMessage对象保存到磁盘?MailMessage对象不公开任何Save()方法.
如果以任何格式保存*.eml或*.msg,我都没有问题.知道怎么做吗?
我正在寻找一个有效的C#示例,用于向Amazon-SES发送附件.
在阅读了Amazon-SES现在支持发送附件后,我正在搜索C#示例,但无法找到它.
有没有简单的方法将System.Net.Mail.MailMessage对象转换为原始邮件消息文本,就像在记事本中打开eml文件一样.
我使用Amazon SES SendRawEmail API,因此我需要一个MailMessage作为Memorystream.
我在stackoverflow上找到了MailMessage到MemoryStream问题的几个答案.
解决方案1:使用使用私有方法的方法会导致电子邮件部分的编码错误:https: //stackoverflow.com/a/8826833
解决方案2:使用此解决方案无编码问题,您将其发送到拾取目录,然后将其读回:https: //stackoverflow.com/a/14350088
我非常不喜欢这样一个事实:我需要写一个临时文件才能使其正常工作.有没有人知道纯MemoryStream解决方案如何搞乱一些编码.
iam测试的邮件是这样的:
var mailMessage = new MailMessage();
mailMessage.Subject = "HEADER WITH SPECIAL ÆØÅ";
mailMessage.Body = "TEST";
Attachment att = new Attachment(@"C:\AttachmentWithSpecial ÆØÅ.pdf");
mailMessage.Attachments.Add(att);
mailMessage.From = new MailAddress("test@test.com", "NameÆØÅ");
mailMessage.To.Add(new MailAddress("test@test.com", "NameÆØÅ"));
Run Code Online (Sandbox Code Playgroud)
总结一下:
对于编码问题,我的意思是'ø'出现
