Qual é o MVC do ASP.NET Core equivalente a Request.RequestURI?
Achei umpublicação no blog que mostra como "calçar" coisas familiares como HttpResponseMessage de volta ao ASP.NET Core MVC, mas quero saber qual é a nova maneira nativa de fazer a mesma coisa que o código a seguir em um método REST Post em um Controller:
// POST audit/values
[HttpPost]
public System.Net.Http.HttpResponseMessage Post([FromBody]string value)
{
var NewEntity = _repository.InsertFromString(value);
var msg = new System.Net.Http.HttpResponseMessage(System.Net.HttpStatusCode.Created);
msg.Headers.Location = new Uri(Request.RequestUri + NewEntity.ID.ToString());
return msg;
}
Em um projeto ASP.NET Core MVC, não consigo obter Request.RequestUri.
Tentei inspecionar Request e consegui fazer uma função como esta:
private string UriStr(HttpRequest Request)
{
return Request.Scheme + "://" + Request.Host + Request.Path; // Request.Path has leading /
}
Então eu poderia escreverUriStr(Request)
em vez de. Mas não tenho certeza se isso está certo. Sinto que estou hackeando o caminho e não o estou usando corretamente.
A pergunta relacionada para versões anteriores do ASP.NET MVC anteriores ao Core, pergunta como obter o URL base do site.