c# - 验证数据模型

标签 c# asp.net-web-api

我创建了一个 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/

相关文章:

c# - ASP.NET Web API 不返回 XML

c# - 在 MVC 中反序列化 JSON

c# - System.Linq.GroupBy 键未在 silverlight 中绑定(bind)

c# - 如何根据字符长度拆分字符串

c# - WPF 应用程序中的 Java Swing Windows "always on top"

entity-framework - 使用 Web API 上的 Autofac 对 EF 进行依赖注入(inject)

c# - 在最深的二叉树中查找元素的最佳解决方案是什么

ASP.Net/ASP.NET Core Web API 未经授权的请求返回 302 重定向响应而不是 401

javascript - 使用 AngularJS 和 ASP.NET Web API 上传/下载字节数组

c# - 如何通过 Unity 容器配置 HttpClient?