public List <Tuple <MailBoxData, Mailbox> > GetMailboxFullInfoList(IMailboxesExp exp) { var list = new List <Tuple <MailBoxData, Mailbox> >(); using (var daoFactory = new DaoFactory()) { var daoMailbox = daoFactory.CreateMailboxDao(); var mailboxes = daoMailbox.GetMailBoxes(exp); list.AddRange(mailboxes.Select(mailbox => GetMailbox(daoFactory, mailbox)).Where(tuple => tuple != null)); } return(list); }
public List <Mailbox> GetMailBoxes(IMailboxesExp exp) { var query = Query() .Where(exp.GetExpression()); if (!string.IsNullOrEmpty(exp.OrderBy) && exp.OrderAsc.HasValue) { query.OrderBy(exp.OrderBy, exp.OrderAsc.Value); } if (exp.Limit.HasValue) { query.SetMaxResults(exp.Limit.Value); } return(Db.ExecuteList(query) .ConvertAll(ToMailbox)); }
public List <MailBoxData> GetMailboxDataList(IMailboxesExp exp) { var tuples = GetMailboxFullInfoList(exp); return(tuples.Select(t => t.Item1).ToList()); }