首页 > 解决方案 > 验证数据模型

问题描述

我创建了一个 webAPI,datamodel 外观如下:

{
 "name" : "",
  "age" : ""
}

由于这是我创建的第 3 方 API,因此会有许多其他开发人员会尝试访问它。他们犯的一个常见错误是他们有时会忘记datamodel. 例如,他们可能根本忘记输入值age

所以他们只会发送name而不是age如下所示。

{
     "name" : ""
}

如何从我的控制器进行验证检查以查看开发人员是否忘记age在 JSON 中输入属性?

我尝试检查null,但它没有用。

public async Task<IActionResult> SaveStudent([FromBody] Student stu)
{
    if(stu.age == null) { DISPLAY ERROR } // This doesn't work
...
}

标签: c#asp.net-web-api

解决方案


与大多数 microsoft web 框架一样,您可以使用DataAnnotations,检查 MSDN 网站,您可以找到如何使用DataAnnotations 和 Json Post的示例,使用您可以为传入模型指定 Range、Required 等的属性,


推荐阅读