¿Cuál es el ASP.NET Core MVC equivalente a Request.RequestURI?

Encontre unentrada en el blog eso muestra cómo "calzar" cosas familiares como HttpResponseMessage de nuevo en ASP.NET Core MVC, pero quiero saber cuál es la nueva forma nativa de hacer lo mismo que el siguiente código en un método REST Post en un controlador:

// 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;

}

En un proyecto ASP.NET Core MVC, parece que no puedo obtener Request.RequestUri.

Intenté inspeccionar Solicitud y pude hacer una función como esta:

private string UriStr(HttpRequest Request)
{
    return Request.Scheme + "://" + Request.Host + Request.Path; // Request.Path has leading /
}

Para poder escribirUriStr(Request) en lugar. Pero no estoy seguro de que sea correcto. Siento que estoy hackeando mi camino, y no estoy usando esto correctamente.

A pregunta relacionada para versiones anteriores de MVC ASP.NET no Core pregunta cómo obtener la URL base del sitio.

Respuestas a la pregunta(3)

Su respuesta a la pregunta