swagger - 显示时间组件/错误格式的 Swashbucke 日期示例
问题描述
我们指定一个带有示例值的输入属性
/// <summary>
/// Start date in format YYYY-MM-DD
/// </summary>
/// <example>2020-05-31</example>
[DataType(DataType.Date)]
public DateTime? From { get; set; }
并产生以下 json
{
"name": "from",
"in": "query",
"description": "Start date in format YYYY-MM-DD",
"schema": {
"type": "string",
"description": "Start date in format YYYY-MM-DD",
"format": "date",
"nullable": true,
"example": "31/05/2020 12:00:00 AM"
}
}
看起来该示例不尊重招摇日期格式,即:格式为 YYYY-MM-DD的完整日期
我使用的设置代码:
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddSwaggerGen(swaggerGenOption =>
{
swaggerGenOption.SwaggerDoc("v1", new OpenApiInfo { Title = "API", Version = "v1" });
swaggerGenOption.IncludeXmlComments(XmlDocPath<Startup>());
});
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app.UseRouting();
app.UseSwagger();
app.UseSwaggerUI(config =>
{
config.RoutePrefix = string.Empty
config.SwaggerEndpoint("./swagger/v1/swagger.json", "TST");
});
app.UseEndpoints(endpoints => endpoints.MapControllers());
}
解决方案
推荐阅读
- excel - 试图了解在 Range 对象上使用 Item 属性和 Cells 属性之间的区别
- javascript - 如何改变
标签文本,不删除下划线或斜体格式?
- r - 在某些观察之前选择组,通过 R 中的分组 var 分隔
- java - 如何为 Payara EJB__TIMER__TBL 指定模式
- shell - 按下 ctrl-c 与多个进程将它们的标准输出管道到单个进程中会杀死 shell
- oop - 如何通过反射 API 在 Java 中获取已处理的对象并为其设置新值?
- sql - Oracle Query 跟踪具有特定日期上下文的表的更改
- pandas - 如何确定为什么熊猫数据框缺少最后几行
- ssh - 忽略 SSH 超时以继续 Gitlab CI
- blockchain - 在 IBM Blockchain 中启动我的业务网络时出错