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.

questionAnswers(3)

yourAnswerToTheQuestion