public int GetTipoProjetoCount(int?idTipoProjeto, string dsTipoProjeto, TipoProjetoOrder order = TipoProjetoOrder.IdC) { return(GetTipoProjetoQuery(idTipoProjeto, dsTipoProjeto, order).Count()); }
public IList <Katapoka.DAO.TipoProjeto_Tb> GetTipoProjeto(int?idTipoProjeto, string dsTipoProjeto, TipoProjetoOrder order = TipoProjetoOrder.IdC, int skip = 0, int?take = null) { var query = GetTipoProjetoQuery(idTipoProjeto, dsTipoProjeto, order).Skip(skip); if (take != null) { query = query.Take(take.Value); } return(query.ToList()); }
private IEnumerable <Katapoka.DAO.TipoProjeto_Tb> GetTipoProjetoQuery(int?idTipoProjeto, string dsTipoProjeto, TipoProjetoOrder order = TipoProjetoOrder.IdC) { var query = this.Context.TipoProjeto_Tb.AsQueryable(); if (idTipoProjeto != null) { query = query.Where(p => p.IdTipoProjeto == idTipoProjeto.Value); } if (!string.IsNullOrWhiteSpace(dsTipoProjeto)) { query = query.Where(p => p.DsTipo.Trim().Contains(dsTipoProjeto.Trim())); } Func <Katapoka.DAO.TipoProjeto_Tb, object> paramOrdenacao = p => p.IdTipoProjeto; switch (order) { case TipoProjetoOrder.IdC: case TipoProjetoOrder.IdD: paramOrdenacao = p => p.IdTipoProjeto; break; case TipoProjetoOrder.DsTipoC: case TipoProjetoOrder.DsTipoD: paramOrdenacao = p => p.DsTipo; break; } if (new TipoProjetoOrder[] { TipoProjetoOrder.DsTipoC, TipoProjetoOrder.IdC }.Contains(order)) { return(query.OrderBy(paramOrdenacao)); } else { return(query.OrderByDescending(paramOrdenacao)); } }