示例#1
0
        internal static StringBuilder GetMailTo(MailEntity message)
        {
            StringBuilder mailTo = new StringBuilder();

            foreach (MailAddress to in message.To)
            {
                mailTo.Append(to);
            }

            return(mailTo);
        }
示例#2
0
        private List <MailEntity> ConvertMassageToMailEntity(List <Message> messages)
        {
            List <MailEntity> retMessages = new List <MailEntity>(messages.Count);

            foreach (Message mes in messages)
            {
                var mailEntity = new MailEntity
                {
                    To       = (from s in mes.Headers.To select s.MailAddress).ToList(),
                    From     = mes.Headers.From.MailAddress,
                    Subject  = mes.Headers.Subject,
                    DateSent = mes.Headers.DateSent,
                    Body     = GetMailBody(mes)
                };


                retMessages.Add(mailEntity);
            }

            return(retMessages);
        }
示例#3
0
        private async void DoMailActionAsync(ConfigEntity configEntity, MailEntity message)
        {
            for (int i = 0; i < configEntity.MailActions.Length; i++)
            {
                switch (configEntity.MailActions[i].ActType)
                {
                case ActionType.Notify:
                    await Task.Run(() => _mailAction.ActionNotify(message));

                    break;

                case ActionType.CopyTo:
                    var i2 = i;
                    await Task.Run(() => _mailAction.ActionCopy(configEntity, message, configEntity.MailActions[i2].ActTypeValue));

                    break;

                case ActionType.Forward:
                    var i3 = i;
                    await Task.Run(() => _mailAction.ActionSend(configEntity, message, configEntity.MailActions[i3].ActTypeValue));

                    break;

                case ActionType.Print:
                    await Task.Run(() => _mailAction.ActionPrint(message));

                    break;

                default:
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine($"\nОшибочные данные! {configEntity.MailActions[i].ActType} - {configEntity.MailActions[i].ActTypeValue}");
                    Console.ForegroundColor = ConsoleColor.Gray;
                    break;
                }
            }
        }