我正在尝试与 Joi 进行验证,但遇到了无法实现的场景。我有一个对象。在某些情况下,对象会有一个 id(编辑),而在其他情况下它不会(创建)。
我想验证在“id”不存在的情况下,应该有几个其他字段。
到目前为止,我唯一有效的解决方案是当 id 为空并且根本没有丢失时。有没有办法匹配不存在的密钥,或者我应该将其更改为 null (有点 hacky)。
joi.object().keys({
id: joi
.number()
.min(0)
.allow(null),
someOtherField1: joi.when("id", { is: null, then: joi.required() })
});
Run Code Online (Sandbox Code Playgroud)
先感谢您!
我在 webapi (.net core 2.1) 中遇到绑定问题。通常当我使用 xml/json 时,我可以向模型道具添加属性(通过 XmlElement 或 JsonProperty)。但是,我有一个项目使用 application/x-www-form-urlencoded 作为媒体类型,因此,模型仅在参数名称与属性名称匹配时才有效(幸运的是不区分大小写)。您能否建议是否有办法实现这种映射?
c# serialization asp.net-web-api asp.net-core-mvc asp.net-core