Skip to content

Parte 16

WILSON DE OLIVEIRA JUNIOR edited this page Mar 9, 2020 · 3 revisions

Parte 16

Criando o serviço que lista categorias.

  1. Crie uma pasta no projeto chamada Controllers.

  2. Dentro da pasta Controllers crie uma nova classe chamada CategoryController.cs.

  3. Altere o conteudo do arquivo CategoryController.cs para o seguinte:

using Microsoft.AspNetCore.Mvc;
using Taste.Domain.Interfaces;
using System;
using System.Threading.Tasks;

namespace Taste.Web.Controllers
{
    [Route("api/[controller]")]
    [ApiController]
    public class CategoryController : Controller
    {
        private readonly IUnitOfWork unitOfWork;

        public CategoryController(IUnitOfWork _unitOfWork)
        {
            this.unitOfWork = _unitOfWork;
        }

        [HttpGet]
        public async Task<IActionResult> Get()
        {
            try
            {
                var l = await this.unitOfWork.Category.GetAll();
                return Json(new { data = l });
            }
            catch (Exception ex)
            {
                return BadRequest(ex.Message);
            }
        }
    }
}
  1. Execute o projeto e veja se esta tudo como esperado.

Execute seu projeto, veja [aqui] o procedimento para o Visual Studio Code.

Para executar o projeto no Visual Studio, basta pressionar F5.

Caso o controller esteja funcionando corretamente o resultado ao clicar no endereço [https://localhost:5001/api/Category] será algo próximo ao modelo abaixo:

{
  "data": {
    "result": [],
    "id": 152,
    "exception": null,
    "status": 5,
    "isCanceled": false,
    "isCompleted": true,
    "isCompletedSuccessfully": true,
    "creationOptions": 0,
    "asyncState": null,
    "isFaulted": false
  }
}

Clone this wiki locally