WebApi:在ApiController外部创建自定义BadRequest状态

时间:2018-08-31 17:30:59

标签: c# asp.net-core .net-core

使用.NET Core 2.0 WebApi。

我有一个webapi,其中有许多端点,每个端点都在处理失败时抛出异常并抛出BadRequest。如下:

if(data == null)
{
   return BadRequest("Data must not be blank.");
}

现在,由于这些状态代码在我的api中是重复的,因此我正在考虑创建一个Helper方法,该方法会将BadRequest返回到我的API。

因此,我创建了一个静态帮助器类。但是这里的问题是BadRequest是ControllerBase的一部分,在我的帮助器类中不可用。创建此方法以返回BadRequest的最佳方法是什么。

-更新----

我想要这样的东西:

    public static BadRequest GetBadRequestMessage(string message)
    {
        return BadRequest(message);
    }

我也尝试过:

    public static BadRequestResult GetBadRequestMessage(string message)
    {
        return new  BadRequestResult(message);
    }

但这会导致错误:严重级代码说明项目文件行抑制状态 错误CS1729“ BadRequestResult”不包含带有1个参数的构造函数

1 个答案:

答案 0 :(得分:3)

您可以手动初始化操作结果

     col1 col2      col3
0  aliceA   CO  Non-Busy
1  aliceB   WA      Busy
2  aliceC   PA      Busy

return new BadRequestObjectResult("error message here"); 内部基本上是什么

ControllerBase

Source