我们假设这个课程:
public class AccountInfo
{
public string Email;
public string Username;
public string Password;
}
和这个ASP api:
[HttpPost, Route("create")]
public IActionResult CreateUser([FromBody]AccountInfo Info)
{
...
}
如果用户传递的内容如下:
{
"eail" : "ndienw", <--- notice the mispelling
"username" : "djiw",
"password" : "dow"
}
电子邮件字段将为null,因此我需要在每次调用中检查每个字段。
是否有自动机制可以检测是否缺少任何字段?我正在寻找可以通过所有调用应用的通用内容。 能够选择退出并标记一些可选参数将是很好的,但在我们的情况下,到目前为止总是需要一切。
在这种情况下,ModelState仍然有效;这是预期的行为吗?
答案 0 :(得分:0)
您可以在电子邮件属性中使用数据注释。 RegularExpression属性将检查位于其上的字段,提供的值是否与此模式匹配。必需属性检查此字段是否为空。
this.arrayLst1 = new ArrayList<>();
this.arrayLst1.addAll(builder.arrayLst2);