我创建了一个 webAPI,datamodel
如下所示:
{
"name" : "",
"age" : ""
}
由于这是我创建的第 3 方 API,因此会有许多其他开发人员尝试访问它。他们常犯的一个错误是他们有时会忘记 datamodel
中的某些字段。例如,他们可能根本忘记输入 age
的值。
所以他们只会发送 name
而不是 age
如下所示。
{
"name" : ""
}
我如何从我的 Controller 进行验证检查,以查看开发人员是否忘记在 JSON 中输入属性 age
?
我尝试检查 null,但没有用。
public async Task<IActionResult> SaveStudent([FromBody] Student stu)
{
if(stu.age == null) { DISPLAY ERROR } // This doesn't work
...
}
最佳答案
与大多数 Microsoft Web 框架一样,您可以使用 DataAnnotatons ,查看 MSDN 网站,您可以找到如何使用 DataAnnotations with Json Post 的示例, 使用可以为传入模型指定范围、必需等的属性,
关于c# - 验证数据模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51621039/