在其为空时,为Web-Api Method参数注入默认值

时间:2015-04-01 15:24:54

标签: asp.net-web-api asp.net-web-api2 action-filter

我有一个类似的web api方法;

[HttpGet, Route("users")]
public HttpResponseMessage GetUsers([FromUri] UserSearchDto searchParams)
{}

searchParams是可选参数,所以当我没有传递任何搜索值并且像http://api-uri/users一样使用它时它变为空,然后我必须在方法体中添加检查以避免空引用异常。

是否有办法使用ActionFilters或其他东西为此web api方法的参数注入默认值,以便我可以避免

if (searchParams == null){
  searchParams = new UserSearchDto ()
}

1 个答案:

答案 0 :(得分:0)

不是我知道的。老实说,你所做的几乎就是它。如果你想让它有点整洁,你可以将那个空检查压缩成一行,如下所示:

searchParams = searchParams ?? new UserSeachDto();