sábado, 18 de julho de 2015

TQuery''

        public Tuple<IEnumerable<Kit>, Int32> ObterKits(Int32 primeiroRegistro, Int32 quantidade, String cdProduto, String dsProduto, String sort, String sortdir)
        {
            using (var context = RaccoEntities())
            {
                var idKitStatus = idKit.S.ToString();
                var result = (from produto in context.tb_Produto.Include("tb_Categoria").Include("tb_Preco")
                              where (produto.cdProduto == cdProduto || String.IsNullOrEmpty(cdProduto)) &&
                                    (produto.dsProduto.ToLower().Contains(dsProduto) || String.IsNullOrEmpty(dsProduto)
                                    )
                                     && produto.idKit == idKitStatus
                              orderby produto.cdProduto
                              select new Kit
                              {
                                  cdProduto = produto.cdProduto,
                                  dsProduto = produto.dsProduto,
                                  vlConsumidor = produto.tb_Preco.vlConsumidor,                              }
                    ).AsQueryable();

                if (sortdir == ConstantHelper._OrdenacaoAscendente)
                {
                    return new Tuple<IEnumerable<Kit>, int>(result.OrderBy(sort).Skip(primeiroRegistro).Take(quantidade).ToList(), result.Count());
                }
                return new Tuple<IEnumerable<Kit>, int>(result.OrderByDescending(sort).Skip(primeiroRegistro).Take(quantidade).ToList(), result.Count());
            }


        }
Postar um comentário