예제 #1
0
        public void Post(ReceiveMail mail)
        {
            Mail tempMail = new Mail();

            tempMail.Titel      = mail.Titel;
            tempMail.Body       = mail.Body;
            tempMail.IdPriority = (int)mail.PriorityEmail;
            databaseMailContext.Mail.Add(tempMail);

            Address sender = new Address();

            sender.IdMail   = tempMail.IdMail;
            sender.Address1 = mail.Sender;
            sender.IdType   = (int)SendTypes.Sender;
            databaseMailContext.Address.Add(sender);

            if (mail.To != null)
            {
                foreach (var item in mail.To)
                {
                    Address To = new Address();
                    To.IdMail   = tempMail.IdMail;
                    To.Address1 = item;
                    To.IdType   = (int)SendTypes.To;
                    databaseMailContext.Address.Add(To);
                }
            }

            if (mail.Cc != null)
            {
                foreach (var item in mail.Cc)
                {
                    Address Cc = new Address();
                    Cc.IdMail   = tempMail.IdMail;
                    Cc.Address1 = item;
                    Cc.IdType   = (int)SendTypes.Cc;
                    databaseMailContext.Address.Add(Cc);
                }
            }

            if (mail.Bcc != null)
            {
                foreach (var item in mail.Bcc)
                {
                    Address Bcc = new Address();
                    Bcc.IdMail   = tempMail.IdMail;
                    Bcc.Address1 = item;
                    Bcc.IdType   = (int)SendTypes.Bcc;
                    databaseMailContext.Address.Add(Bcc);
                }
            }

            if (mail.Attachments != null)
            {
                foreach (var item in mail.Attachments)
                {
                    Attachment attachment = new Attachment();
                    attachment.IdMail  = tempMail.IdMail;
                    attachment.Name    = item.Name;
                    attachment.Content = item.Content;

                    databaseMailContext.Attachment.Add(attachment);
                }
            }

            Status status = new Status();

            status.IdMail  = tempMail.IdMail;
            status.Status1 = (int)MailStatus.Pending;

            databaseMailContext.SaveChanges();
        }
예제 #2
0
파일: Worker.cs 프로젝트: szszAGH/Codibly
 public void AddMail(ReceiveMail receiveMail)
 {
     mailQueue.Enqueue(receiveMail);
 }
예제 #3
0
 public void Post([FromQuery] ReceiveMail receiveMail)
 {
     worker.AddMail(receiveMail);
 }