public IHttpActionResult Cadastrar(PedidoDTO pedidoDTO)
        {
            List <string> errosValidacao;

            var pedido = new Pedido();

            pedido.InjectFrom(pedidoDTO);

            _pedidoService.RealizarNovo(pedido, out errosValidacao);
            pedidoDTO.InjectFrom(pedido);

            _HATEOASManager = new PedidoHATEOASManager(_urlBase, PedidoEstadoAtualDaAplicacao.CadastrarPedido,
                                                       pedidoDTO);

            pedidoDTO.Links = _HATEOASManager.ObterLinks();

            if (errosValidacao.Count == 0)
            {
                return(Created(new Uri(_urlBase + pedidoDTO.PedidoID), pedidoDTO));
            }
            else
            {
                return(BadRequest(errosValidacao.Aggregate((a, b) => { return a + ", " + b; })));
            }
        }
        public IHttpActionResult Obter(int id)
        {
            var pedidoDTO = new PedidoDTO();
            var pedido    = _pedidoService.Obter().Where(p => p.PedidoID == id).SingleOrDefault();

            if (pedido == null)
            {
                return(NotFound());
            }

            pedidoDTO.InjectFrom(pedido);

            _HATEOASManager = new PedidoHATEOASManager(_urlBase, PedidoEstadoAtualDaAplicacao.ObterPedidoUnico,
                                                       pedidoDTO);

            pedidoDTO.Links = _HATEOASManager.ObterLinks();

            return(Ok(pedidoDTO));
        }