1
resposta

Aspnet core + .net 4.6.1 nao método CreateResponse nao existe em Request

Estou tentando fazer uma WebApi com aspnet core e .net framework 4.6.1, precisa ser na 4.6.1 pq ainda nao tem conector oracle pra .net core.

Preciso criar a response HttpResponseMessage, porem no Request nao tem mais o metodo CreateResponse, como proceder?

Meu controler esta herdando de :Controller (parece que foi unificado apicontroller dentro de controller).

O Request é do tipo Microsoft.AspNetCore.Http.HttpRequest ControllerBase.Request

As referencias: using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using System.Net.Http; using System.Net;

[HttpGet("{id}")]
        public HttpResponseMessage Get(int id)
        {
            try
            {
                var dao = new CarrinhoDAO();
                var carrinho = dao.Busca(id);
                var response = Request.CreateResponse((HttpStatusCode.OK, carrinho)); /*AQUI DA O ERRO FALANDO QUE nao tem metodo create response na request */
                return response;
            }
            catch (KeyNotFoundException)
            {
                var mensagem = string.Format("O carrinho {0} não foi encontrado", id);
                var error = new HttpError(mensagem);
                return Request.CreateResponse(HttpStatusCode.NotFound, error);
            }
        }
1 resposta

Oi William, tudo bom?

Dando uma pesquisada aqui, vi que esse método está definido em System.Net.Http.Formatting.Extension. Tenta rodar no seu nuget a instalçao desse extensão, de repente é só uma dll faltando:

Install-Package System.Net.Http.Formatting.Extension -Version 5.2.3

Qualquer problema é só falar.

Abraço!