In webApi2 i could write a custom ActionResult by inheriting IHttpActionResult.
Sample :
public class MenivaActionResult : IHttpActionResult
{
private readonly HttpRequestMessage _request;
private readonly ServiceResponseBase _response;
public MenivaActionResult(HttpRequestMessage request, ServiceResponseBase response)
{
_request = request;
_response = response;
}
public Task<HttpResponseMessage> ExecuteAsync(CancellationToken token)
{
HttpResponseMessage httpresponseMessage = _response.Exception != null
? _request.CreateErrorResponse((HttpStatusCode)_response.HttpCode,
_response.Exception.Message+":"+_response.Exception.HelpCode)
: _request.CreateResponse((HttpStatusCode)_response.HttpCode, _response.Data);
return Task.FromResult(httpresponseMessage);
}
}
The ServiceResponseBase class object holds all the exception and data from service layer..
How i can port this code to asp.net core. I tried but i dont know how create a response message from HttpRequestMessage object in .net core. The IActionResult only have Task ExecuteResultAsync(ActionContext context)
method. how i can modify the response from this method
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…