gpt4 book ai didi

c# AspNetCore WebApi - 如何判断 PUT 上是否设置了 json 属性?

转载 作者:行者123 更新时间:2023-11-30 17:30:27 26 4
gpt4 key购买 nike

<分区>

在我的 AspNetCore WebApi 中将 json 反序列化为类模型时,我很难找到处理默认值的最佳方法。

每当客户端向 api 发出 PUT 请求时,我应该如何确定属性是否在请求中设置为 null - 或者根本没有在请求中设置?

此时我使用 [FromBody] 属性反序列化为一个类类型,以及 ModelValidation 用于需要字段等。但是一旦 json 请求被反序列化,我怎么知道例如。 “字符串名称”属性被显式设置为 null,或者在 json 请求中根本没有设置,但默认为 null?

如果它根本没有设置,我不想更改保存在数据库中的实际模型的状态,因为该属性。

当客户端使用 PUT 时出现问题,并且已经实现了客户端不知道的新字段。我不希望客户将"new"值覆盖为 null,因为他们一开始就无意设置。

是否有处理此问题的标准或最佳做法?我无法想象我是唯一遇到这个问题的人。实现我自己的 json 反序列化器,或者为了添加额外的字段而实现端点的版本控制,似乎有点过头了。同时协调所有客户端的部署(新属性的处理/value 被处理),也不是一个选项。

感谢所有建议。

问候弗雷德里克

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com