无法使用.Net 8 Api 将 JSON 值转换为 System.DateOnly

问题描述 投票:0回答:1

使用 .Net 8,我尝试将各种格式的日期传递到我的 Api 端点,但无法克服此错误。我收到 400 响应,错误如下:

The JSON value could not be converted to System.DateOnly

[HttpPost]
public async Task<ActionResult<Item>> CreateItem(CreateItemRequest request)
{
    var Item = await _ItemService.CreateItemAsync(request);

    return Ok(Item);
}

public class CreateItemRequest
{
    ...
    public DateOnly CreateDate { get; set; }
    ...
}

Json Request Body
{
    ...
    "createDate":"2024-1-7"
    ...
}
asp.net
1个回答
0
投票

DateOnly
TimeOnly
的模型绑定可从 .NET 7 获得,如向模型绑定和路由添加 DateOnly 和 TimeOnly 支持中所述。

问题是您提供的日期字符串与格式不匹配。它应该采用“yyyy-MM-dd”(ISO 8601)格式。

{
    "createDate":"2024-01-07"
}
© www.soinside.com 2019 - 2024. All rights reserved.