コード例 #1
0
 private void btnShowAll_Click(object sender, RoutedEventArgs e)
 {
     if (rdoAll.IsChecked == true)
     {
         grdViewRemoveEmails.ItemsSource = RemoveMailService.GetAll();
     }
     else if (rdoMTD.IsChecked == true)
     {
         grdViewRemoveEmails.ItemsSource = RemoveMailService.GetSince(DateTime.Parse(DateTime.Now.Month.ToString() + "/01/" + DateTime.Now.Year.ToString()));
     }
     else if (rdoYTD.IsChecked == true)
     {
         grdViewRemoveEmails.ItemsSource = RemoveMailService.GetSince(DateTime.Parse("01/01/" + DateTime.Now.Year.ToString()));
     }
 }
コード例 #2
0
        private void LoadAndProcessRemoveEmails()
        {
            try
            {
                MailMessageCollection msgs;
                grdViewRemoveEmails.ItemsSource = null;

                Imap imp = new Imap();
                imp.Connect(ConfigurationManager.AppSettings["RemovePOP3Server"]);
                imp.Login(ConfigurationManager.AppSettings["RemovePOP3User"], ConfigurationManager.AppSettings["RemovePOP3Password"]);
                imp.SelectFolder("Inbox");

                int totalCount = imp.MessageCount;
                msgs = imp.DownloadEntireMessages("1:" + totalCount.ToString(), false);

                if (totalCount > 0)
                {
                    _removeMailMessages = new List <RemoveMail>();
                    RemoveMail _removeMailMessage = new RemoveMail();

                    int i = 1;

                    foreach (MailMessage _msg in msgs)
                    {
                        _removeMailMessage = new RemoveMail()
                        {
                            IndexOnMailServer = i, MsgDateTime = _msg.DateReceived, ToAddress = _msg.To.ToString(), FromAddress = _msg.From.ToString(), Body = _msg.BodyPlainText, Subject = _msg.Subject
                        };

                        if (((RemoveMail)_removeMailMessage).Subject.ToUpper().Contains("REMOVE"))
                        {
                            try
                            {
                                string[]       _body = ((RemoveMail)_removeMailMessage).Body.Trim().Split(',');
                                string[]       _name = _body[0].Split(' ');
                                BankruptcyCase _case = BankruptcyCaseService.GetByNameAndZip(_name[0], "", _name[1], Int32.Parse(_body[1].Trim()));

                                if (_case != null)
                                {
                                    _case.DontSend = true;
                                    BankruptcyCaseService.Save(_case, false);

                                    ((RemoveMail)_removeMailMessage).Processed       = true;
                                    ((RemoveMail)_removeMailMessage).FoundAndRemoved = true;
                                }
                                else
                                {
                                    ((RemoveMail)_removeMailMessage).Processed       = true;
                                    ((RemoveMail)_removeMailMessage).FoundAndRemoved = false;
                                }
                            }
                            catch { }
                        }

                        _removeMailMessages.Add(_removeMailMessage);

                        //save to the DB
                        RemoveMailService.Save(_removeMailMessage);
                    }

                    grdViewRemoveEmails.ItemsSource = _removeMailMessages;
                }

                //delete the messages
                if (ConfigurationManager.AppSettings["RemovePOP3Messages"] == "true")
                {
                    imp.DeleteMessages(Imap.AllMessages, false);
                    //_removeMailMessages.Clear();
                }
                imp.Close();
                imp.Disconnect();
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.ToString());
            }
        }