ASP.NET Core.Http.HttpRequest 不包含"CreateResponse"、"RequestUri"和'CreateErrorResponse'的定义



我正在尝试将以下代码从ASP.Net MVC转换为ASP.Net Core MVC。但是核心MVC中缺少"CreateResponse"、"RequestUri"one_answers"CreateErrorResponse"。

public HttpResponseMessage CallUserMappings()
{
try
{
//return response status as successfully created with  entity  
var msg = Request.CreateResponse(HttpStatusCode.Created);
//Response message with requesturi for check purpose  
msg.Headers.Location = new Uri(Request.RequestUri.ToString());
return msg;
}
catch (Exception ex)
{
//return response as bad request  with exception message.  
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
}
}

在此处输入图像描述

有什么替代方法吗?

这将是.NET Core中未经测试的等价物:

public IActionResult CallUserMappings()
{
try
{ 
return Created(Request.GetDisplayUrl(), null);
}
catch (Exception ex)
{
return BadRequest(ex);
}
}

要使用Request.GetDisplayUrl()方法,需要导入Microsoft.AspNetCore.Http.Extensions命名空间。

最新更新