如何使用FromQuery Attribute获取复杂对象?

丁祖巍*_*丁祖巍 10 c# asp.net-web-api

如何使用FromQueryAttribute获取一个复杂的对象?

[HttpGet]
public IActionResult Get([FromQuery] DataGridRequest request)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

DataGridRequest类如下:

public class DataGridRequest
{
    public DataGridPager Pager { get; set; }

    ...
}

public class DataGridPager
{
    public int Size { get; set; }

    public int Index { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

怎么写uri?

Rom*_*syk 11

您可以尝试这样的Get请求

controller?Size=1&Index=2
Run Code Online (Sandbox Code Playgroud)

也可以尝试使用[FromUri]代替[FromQuery].该[FromUri]属性尝试按名称将对象属性绑定到查询字符串属性

  • ASP.NET Core中不存在`FromUri`.任何替代? (3认同)
  • @Shimmy是的,有一个`[FromQuery]`从请求查询字符串中获取参数和`[FromRoute]` (3认同)
  • 您还可以使用 [FromQuery] 绑定到复杂对象,例如 `public async Task<IActionResult> Get([FromQuery] MyFilterModel _filters)` 请参阅此链接:http://www.tutorialsteacher.com/webapi/parameter-binding-in -web-api (3认同)