Что такое ASP.NET Core MVC эквивалентно Request.RequestURI?

Я нашелСообщение блога в нем показано, как «переложить» знакомые вещи, такие как HttpResponseMessage, обратно в ASP.NET Core MVC, но я хочу знать, каков новый родной способ сделать то же самое, что и следующий код в методе REST Post в 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;

}

В проекте ASP.NET Core MVC я не могу получить Request.RequestUri.

Я попытался проверить запрос, и я смог создать такую ​​функцию:

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

Чтобы я мог написатьUriStr(Request) вместо. Но я не уверен, что это правильно. Я чувствую, что я хожу по своему пути, и не использую это правильно.

A связанный вопрос для более ранних версий ядра ASP.NET MVC спрашивает, как получить базовый URL сайта.

Ответы на вопрос(3)

Ваш ответ на вопрос