我有一个更新实体的典型端点
public IHttpActionResult Patch([FromODataUri] int key, Delta<Individual> patch)
Individual有一个不可为空的int属性StatusId,它具有[Required]属性。什么时候&#34;&#34;传入,它正确抛出错误:
请求
{
"statusId": ""
}
响应
{
"error": {
"code": "",
"message": "Request contains validation errors.",
"details": [
{
"target": "patch",
"message": "",
"innerError": {
"message": "Cannot convert the literal '' to the expected type 'Edm.Int32'."
}
}
]
}
}
但是,当我传入null时,它不会给出验证错误,并且Delta对象不会将其列为已更改的属性。
请求
{
"statusId": null
}
预期回复
{
"error": {
"code": "",
"message": "Request contains validation errors.",
"details": [
{
"target": "patch",
"message": "",
"innerError": {
"message": "Cannot convert null to the expected type 'Edm.Int32'."
}
}
]
}
}
我们希望能够在为非可空字段传入null时验证并返回错误,而不是只是默默地忽略错误。
我将如何做到这一点?