示例#1
0
 public MailFileName(ParsedMail mail)
 {
     //fromuser_domain_to_touser_domain_subject
     Name = string.Format("{0}-{1} to {2}-{3} [{4}].eml",
                          mail.FromUser.UserName,
                          mail.FromUser.UserDomain,
                          mail.ToUser.UserName,
                          mail.ToUser.UserDomain,
                          mail.Subject.Text);
 }
示例#2
0
        private static void MessageReceived(object sender, MessageEventArgs e)
        {
            Console.WriteLine(string.Format("MESSAGE RECEIVED - Envelope From:{0} Envelope To:{1}", e.Message.From,
                                            string.Join(", ", e.Message.To)));

            var parsedMail   = new ParsedMail(e);
            var fileName     = new MailFileName(parsedMail);
            var fullFileName = Path.Combine(config.MailsFolder, fileName.Name);

            WriteMailToDisk(fullFileName, parsedMail);
        }
示例#3
0
 private static void WriteMailToDisk(string fullFileName, ParsedMail parsedMail)
 {
     using (var outStream = File.Create(fullFileName))
     {
         using (var writer = new StreamWriter(outStream))
         {
             foreach (var line in parsedMail.Content.Lines)
             {
                 writer.WriteLine(line);
             }
             writer.Flush();
         }
     }
 }