internal static Email.MailQuery GetMailQuery(string searchText) { Email.MailQuery mQuery = null; if (searchText.Trim().Length > 0) { Aspose.Email.MailQueryBuilder queryBuilder = new Aspose.Email.MailQueryBuilder(); mQuery = queryBuilder.Or(queryBuilder.Body.Contains(searchText, true), queryBuilder.Cc.Contains(searchText, true)); mQuery = queryBuilder.Or(mQuery, queryBuilder.From.Contains(searchText, true)); mQuery = queryBuilder.Or(mQuery, queryBuilder.To.Contains(searchText, true)); mQuery = queryBuilder.Or(mQuery, queryBuilder.Subject.Contains(searchText, true)); } return(mQuery); }
public override int ListMessagesInFolder(ref GridView gridView, string folderUri, string searchText) { try { Email.MailQuery mQuery = Common.GetMailQuery(searchText); List <Message> messagesList = new List <Message>(); Pop3MessageInfoCollection msgCollection = null; if (mQuery == null) { msgCollection = client.ListMessages(); } else { msgCollection = client.ListMessages(mQuery); } int messageCount = 1; foreach (Pop3MessageInfo msgInfo in msgCollection) { if (messageCount > Common.MaxNumberOfMessages) { break; } //Retrieve the message in a MailMessage class messagesList.Add(new Message (msgInfo.UniqueId.ToString(), Common.FormatDate(msgInfo.Date), Common.FormatSubject(msgInfo.Subject), Common.FormatSender(msgInfo.From) )); messageCount++; } gridView.DataSource = messagesList; gridView.DataBind(); return(messagesList.Count); } catch (Exception) { } return(0); }
public override int ListMessagesInFolder(ref GridView gridView, string folderUri, string searchText) { try { Email.MailQuery mQuery = Common.GetMailQuery(searchText); ImapFolderInfo folderInfoStatus = client.ListFolder(folderUri); client.SelectFolder(folderUri); ImapMessageInfoCollection msgInfoColl = null; if (mQuery == null) { msgInfoColl = client.ListMessages(Common.MaxNumberOfMessages); } else { msgInfoColl = client.ListMessages(mQuery, Common.MaxNumberOfMessages); } List <Message> messagesList = new List <Message>(); messagesList = (from msg in msgInfoColl orderby msg.Date descending select new Message() { UniqueUri = msg.UniqueId, Date = Common.FormatDate(msg.Date), Subject = Common.FormatSubject(msg.Subject), From = Common.FormatSender(msg.From) }).ToList(); gridView.DataSource = messagesList; gridView.DataBind(); return(msgInfoColl.Count); } catch (Exception) { } return(0); }