public async Task <List <SubCategoriaServicoViewModel> > Get()
        {
            var subCategorias = await _SubCategoria.GetAsync();

            var categorias = await _Categoria.GetAsync();

            return((from sub in subCategorias
                    join cat in categorias on sub.IdCategoria equals cat.Id
                    select new SubCategoriaServicoViewModel(sub.IdCategoria, sub.Id, sub.Descricao, sub.Link)
            {
                Categoria = new CategoriaServicoViewModel(cat.Id, cat.Descricao, cat.LinkImagem)
            }).ToList());
        }
        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());
        }