在 .NET Core 中从 HttpResponseMessage 转换为 IActionResult [英] Convert from HttpResponseMessage to IActionResult in .NET Core

查看:27
本文介绍了在 .NET Core 中从 HttpResponseMessage 转换为 IActionResult的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在将一些以前用 .NET Framework 编写的代码移植到 .NET Core.

我有过这样的经历:

HttpResponseMessage result = await client.SendAync(request);如果 (result.StatusCode != HttpStatusCode.OK){IHttpActionResult response = ResponseMessage(result);返回响应;}

这个函数的返回值现在是IActionResult.

如何获取 HttpResponseMessage 结果 对象并从中返回 IActionResult ?

解决方案

您可以使用硬设置状态代码返回,例如 Ok();BadRequest();

或者使用动态返回

StatusCode(<你的状态码号>,<可选返回对象>);

这是使用Microsoft.AspNetCore.Mvc

下面是这个.StatusCode 详细说明了一点:

/* "this" 来自你的类是 Microsoft.AspNetCore.Mvc.ControllerBase 的子类 */StatusCodeResult scr = this.StatusCode(200);/* 或者 */Object myObject = new Object();ObjectResult 矿石 = this.StatusCode(200, myObject);返回 scr;/* 或返回矿石;*/

I'm porting over some code that was previously written in .NET Framework to .NET Core.

I had something like this:

HttpResponseMessage result = await client.SendAync(request);
if (result.StatusCode != HttpStatusCode.OK)
{
    IHttpActionResult response = ResponseMessage(result);
    return response;
}

The return value of this function is now IActionResult.

How do I take the HttpResponseMessage result object and return an IActionResult from it?

解决方案

You can return using hardset status codes like Ok(); or BadRequest();

Or return using a dynamic one using

StatusCode(<Your status code number>,<Optional return object>);

This is using Microsoft.AspNetCore.Mvc

Below is this.StatusCode spelled out a little more:

/* "this" comes from your class being a subclass of Microsoft.AspNetCore.Mvc.ControllerBase */
StatusCodeResult scr = this.StatusCode(200);
/* OR */
Object myObject = new Object();
ObjectResult ores = this.StatusCode(200, myObject);
return scr; /* or return ores;*/

这篇关于在 .NET Core 中从 HttpResponseMessage 转换为 IActionResult的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆