.NET Core 2.1返回带有自定义StatusCode的ObjectResult

我正在从.NET Framework WebAPI迁移到.NET Core 2.1,并且在返回带有有效负载和自定义状态代码的ObjectResult()时遇到问题。 我的端点看起来像这样

public IactionResult Create([FromBody]string user) => _userService.CreateUser(user);

用户是一个以base64字符串编码的JSON对象,我有一个“原始请求正文” InputFormatter。

CreateUser()方法返回一个如下所示的ObjectResult

public class InsertionOk : ObjectResult
    {
    public InsertionOk(object payload) : base(payload) {
    Value = payload;
    StatusCode = 1;
    ContentTypes.Add(new MediaTypeHeaderValue("text/plain"));
    }

这将返回HTTP状态代码504:接收失败。 那好 然后,我尝试使用StreamContent对象将异步任务ExecuteResultAsync和CopyAsync重写为HttpContext.Response.Body。 这以正确的格式返回了正确的有效负载,但是状态码为200。因此,我要做的就是覆盖状态代码...除了它返回另一个状态代码504。如果您知道我的代码正在发生什么或需要其他详细信息,请大声喊叫。谢谢

PINGPING456 回答:.NET Core 2.1返回带有自定义StatusCode的ObjectResult

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3114795.html

大家都在问