我无法解析 .net 7 Web API 中的 DateOnly 类型

I can't parse DateOnly type in .net 7 web api

提问人:lolo xoxo 提问时间:5/30/2023 最后编辑:Stevenlolo xoxo 更新时间:5/30/2023 访问量:437

问:

我有 POST 端点,它接收一个带有 DateOnly 字段的对象。我尝试使用 https://github.com/maxkoshevoi/DateOnlyTimeOnly.AspNet 包,但没有解决我的问题。仍然出现错误The JSON value could not be converted to DateOnly

这是有效载荷:

[
  {
    "startDate": {
      "year": 2023,
      "month": 5,
      "day": 29,
      "dayOfWeek": 1
    },
    "name": "string",
    "endDate": {
      "year": 2023,
      "month": 11,
      "day": 1,
      "dayOfWeek": 2
    }
  }
]

和 POST 方法:

[HttpPost("Save")]
public async Task<IActionResult> Save([FromBody] IEnumerable<Data> Data)
{
       // some logic

        return Ok();
}
C# 日期时间 NET-7.0

评论

1赞 Felix 5/30/2023
欢迎来到 SO。您可能会发现,当涉及到如何提问和这个问题清单时,阅读网站帮助中心很有用。你为解决问题而编写的代码应该包括一个最小的可重现示例,并包含在你的问题中。
0赞 Steven 5/30/2023
我敢打赌,ASP.NET Core 无法解析到日期。ASP.NET Core 要求日期采用标准 ISO 表示法。不如试试这个: .{ "year": 2023, "month": 5, "day": 29, "dayOfWeek": 1 }"startDate": "2023-05-29"
0赞 lolo xoxo 5/30/2023
我使用示例有效负载和 HTTP 端点更新了我的问题
0赞 lolo xoxo 5/30/2023
@Steven Swagger 根据我的 POST 方法体创建一个请求模型。就是这样大摇大摆
1赞 Steven 5/30/2023
我认为这是 Swagger 中的一个错误。您的 Swagger 版本尚不支持,这就是为什么它输出 的 、 、 和 属性。检查是否有较新版本的 Swagger 支持,否则只需忽略 Swagger 示例。DateOnlyYearMonthDayDayOfWeekDateOnlyDateOnly

答: 暂无答案