public async Task <SubCategoriaServicoViewModel> Get(int Id) { var subCategoria = await _SubCategoria.GetAsync(Id); var categoria = await _Categoria.GetAsync(subCategoria.IdCategoria); if (subCategoria == null) { return(null); } var novaSubCategoria = SubCategoriaServicoViewModel.Create(subCategoria, categoria); return(novaSubCategoria); }
public async Task <List <CategoriaServicoViewModel> > Get() { var categorias = await _Categoria.GetAsync(); var subCategorias = await _SubCategoria.GetAsync(); if (categorias == null) { return(null); } return((from cat in categorias join sub in subCategorias on cat.Id equals sub.IdCategoria group new { cat, sub } by cat.Id into agrupamento select new CategoriaServicoViewModel(agrupamento.FirstOrDefault().cat.Id, agrupamento.FirstOrDefault().cat.Descricao, agrupamento.FirstOrDefault().cat.LinkImagem) { SubCategorias = agrupamento.Select(X => SubCategoriaServicoViewModel.Create(X.sub)).ToList() }).ToList()); }