【问题标题】:Inject Default value for Web-Api Method parameter when its null为 Web-Api 方法参数注入默认值,当其为空时
【发布时间】:2015-04-01 15:24:53
【问题描述】:

我有一个类似的 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 ()
}

【问题讨论】:

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


    【解决方案1】:

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

    searchParams = searchParams ?? new UserSeachDto();
    

    【讨论】:

      猜你喜欢
      • 2010-09-18
      • 1970-01-01
      • 2017-08-06
      • 2014-12-20
      • 1970-01-01
      • 2023-03-10
      • 1970-01-01
      • 1970-01-01
      • 2021-12-09
      相关资源
      最近更新 更多