C# 将原始字符串转换为mimessage

C# 将原始字符串转换为mimessage,c#,mime-message,rawstring,C#,Mime Message,Rawstring,我想将Gmail原始消息转换为Mimekit.MimeMessage。可以将MimeMessage转换为原始字符串,但无法将其反转 从gmail获取原始邮件的代码: var emailInfoReq = service.Users.Messages.Get("me", email.Id); emailInfoReq.Format = UsersResource.MessagesResource.GetRequest.FormatEnum.Raw; var emailInfoResponse =

我想将Gmail原始消息转换为Mimekit.MimeMessage。可以将MimeMessage转换为原始字符串,但无法将其反转

从gmail获取原始邮件的代码:

var emailInfoReq = service.Users.Messages.Get("me", email.Id);
emailInfoReq.Format = UsersResource.MessagesResource.GetRequest.FormatEnum.Raw; 
var emailInfoResponse = emailInfoReq.Execute();
if (emailInfoResponse != null)
  {                        
    var message = emailInfoResponse.Raw;
    //string Msg = DecodeBase64String(message);
    //byte[] Msg = Base64UrlDecode(message);
    MimeKit.MimeMessage Message1 = new MimeKit.MimeMessage();
    // MimeMessage not taking string as well as byte[] input
  }

任何帮助都将不胜感激。谢谢。

这很容易,多亏了鲁福爵士的创意

如果有人愿意,只需发布它:将字节[]转换为内存流并将其加载到mimessage:

 var message = emailInfoResponse.Raw;
 byte[] Msg = Base64UrlDecode(message);
 MemoryStream mm = new MemoryStream(Msg);
 MimeKit.MimeMessage Message1  = MimeKit.MimeMessage.Load(mm);

您可以从流中加载消息。如果加载方法有一个从字符串读取的重载,那就太好了…@jjxtra load method只重载流而不是字符串。那么您如何从字符串加载呢?