In my controller there is a method take accepts one route and and one query parameter as arguments:
/// <summary>
/// My Method
/// </summary>
/// <param name="routeParameter">Nice description of route parameter.</param>
/// <param name="queryParameter">Nice description of query paramter.</param>
[HttpPost("somePath/{routeParameter}")]
public IActionResult MyMethod([FromRoute] string routeParameter, [FromQuery] DateTime queryParamter)
{
// do something
}
In the OpenApi.json / Swagger generated from this signature via Swashbuckle XML the routeParameter (path) is always required but the queryParameter (query) is marked as optional.
How can I mark the query parameter as required, too?
How can I mark the query parameter as required, too?
Just use [FromQuery, BindRequired] as follow:
[HttpPost("somePath/{routeParameter}")]
public IActionResult MyMethod([FromRoute] string routeParameter, [FromQuery, BindRequired] DateTime queryParamter)
{
// do something
}
Here is the test result:

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With