首页 > 解决方案 > 在复杂类型上使用 [FromQuery] Name 属性

问题描述

我们可以[FromQuery(Name"param")]在控制器操作中使用来指定传递的参数将如何在 uri 中使用,如下所示:

[HttpGet()]
public IActionResult GetPeople([FromQuery(Name="page")] int pageNumber, [FromQuery(Name="size")] int pageSize)
{
     //Do things
}

在使用复杂类型(例如PeoplePaginationParameterswhere )的情况下如何使用它:

public class PaginationParameters
{
    public int PageNumber { get; set;}
    public int PageSize { get; set;}
}

有没有类似的东西:

[HttpGet()]
public IActionResult GetPeople([FromQuery(Name="page", Name="size")] PaginationParameters paginationParameters)
{
    //Do things
}

标签: c#restapiasp.net-coreasp.net-core-mvc

解决方案


您可以只使用[FromQuery(Name="parameterName")]复杂类型的每个属性:

public class PaginationParameters
{
    [FromQuery(Name = "page")]
     public int PageNumber { get; set;}
    [FromQuery(Name = "size")]
    public int PageSize { get; set;}
}

推荐阅读