我有这样的控制器
[HttpGet]
public Task<IActionResult> GetCsvAudit([FromQuery] ReportDto request)
{
return Task.FromResult<IActionResult>(Ok());
}
public class ReportDto
{
public DateTimeRange ActionDateRange { get; set; }
public PhiResourceType OrderBy { get; set; }
public string PhiResourceTypeIdentifier { get; set; }
}Swagger的DateTimeRange配置如下:
c.MapType<DateTimeRange>(() => new OpenApiSchema()
{
Description = "Date range",
Type = "string",
Title = "Date range",
Example = new OpenApiString("2020-11-15T00:42:13+00:00 - 2020-11-16T00:42:13+00:00"),
}); 问题是,当我使用[FromQuery]属性时,Swagger仍然希望我在查询中提供每个DateTimeRange属性,而我希望它为它提供字符串2020-11-15T00:42:13+00:00,2020-11-16T00:42:13+00:00。

发布于 2020-11-16 17:13:38
如果您将字段/属性标记为internal、protected或private,则swagger文档中swashbuckle将自动忽略它:
public class DateTimeRange
{
internal string Start { get; set; }
internal string End { get; set; }
}结果:

https://stackoverflow.com/questions/64844048
复制相似问题