我想知道是否有可能,或者如何将我的类上用作 Web API 调用的参数的字段标记为必需?我显然可以在收到消息后手动执行此操作,但我希望管道中内置了一些东西(比如在 MVC 中结合使用必需字段注释的 jQuery 自动返回到显示必需字段符号的 UI)所以我不必手动检查所有内容。
假设我有以下 ViewModel 类:
public class PersonViewModel
{
public string FirstName {get; set;}
public string MiddleName {get; set;}
public string LastName {get; set;}
}
这是我在一个简单的 Post 方法PersonController
public HttpResponseMessage Post(PersonViewModel person)
{
}
假设FirstName
andLastName
字段是必需的,但不是 MiddleName
。我想知道的是,如果Person
对象没有填充所需的字段之一,调用是否会自动以 HTTP 400 错误请求或类似的方式响应客户端?
基本上我必须手动完成所有这些工作,还是有办法让框架自动处理带注释的字段,所以我没有很多用于必填字段的样板验证代码?
我试图避免的手动方式:
if (ModelState.IsValid)
{
if (person.LastName == string.empty)
{
return Request.CreateResponse(HttpStatusCode.BadRequest);
}
}
任何帮助表示赞赏,谢谢!