Asp.net core ASP.NET核心:根据需要标记[FromQuery]参数
在我的控制器中,有一个方法take接受一个路由和一个查询参数作为参数:Asp.net core ASP.NET核心:根据需要标记[FromQuery]参数,asp.net-core,swagger,query-parameters,Asp.net Core,Swagger,Query Parameters,在我的控制器中,有一个方法take接受一个路由和一个查询参数作为参数: // ///我的方法 /// ///很好的路线参数描述。 ///很好地描述了查询参数。 [HttpPost(“somePath/{routeParameter}”)] 公共IActionResult MyMethod([FromRoute]字符串路由参数,[FromQuery]日期时间查询参数) { //做点什么 } 在通过Swashback XML从此签名生成的OpenApi.json/Swagger中,routePa
//
///我的方法
///
///很好的路线参数描述。
///很好地描述了查询参数。
[HttpPost(“somePath/{routeParameter}”)]
公共IActionResult MyMethod([FromRoute]字符串路由参数,[FromQuery]日期时间查询参数)
{
//做点什么
}
在通过Swashback XML从此签名生成的OpenApi.json/Swagger中,routeParameter
(路径)始终是必需的,但queryParameter
(查询)被标记为可选的
如何根据需要标记查询参数?这里有一个使用
[FromUri]
接收参数的替代方法
[HttpPost("somePath")]
public IActionResult MyMethod([FromUri] Paging paging, [FromUri] QueryParam param)
{
// do something
}
QueryParam.cs
public class QueryParam
{
[Required]
public string routeParameter{ get; set; }
}
大摇大摆的用户界面
这里有一个使用
[FromUri]
接收参数的替代方案
[HttpPost("somePath")]
public IActionResult MyMethod([FromUri] Paging paging, [FromUri] QueryParam param)
{
// do something
}
QueryParam.cs
public class QueryParam
{
[Required]
public string routeParameter{ get; set; }
}
大摇大摆的用户界面
如何将查询参数也标记为所需
只需使用[FromQuery,BindRequired]如下:
[HttpPost(“somePath/{routeParameter}”)]
公共IActionResult MyMethod([FromRoute]字符串路由参数,[FromQuery,BindRequired]日期时间查询参数)
{
//做点什么
}
以下是测试结果:
如何将查询参数也标记为所需
只需使用[FromQuery,BindRequired]如下:
[HttpPost(“somePath/{routeParameter}”)]
公共IActionResult MyMethod([FromRoute]字符串路由参数,[FromQuery,BindRequired]日期时间查询参数)
{
//做点什么
}
以下是测试结果:
这基本上与这个问题相反,路线参数应该是可选的:我的回答是否帮助您解决了问题?如果问题解决了,请接受它作为答案,否则,请告诉我你仍然存在的问题。这基本上与这个问题相反,路线参数应该是可选的:我的答案帮助你解决问题了吗?如果问题解决了,请接受它作为答案,否则,请告诉我您仍然存在的问题。