![](/img/trans.png)
[英]ASP.NET Core Web API - How to handle "null" vs. "undefined" in URL query strings?
[英]ASP.NET Core Web API : how to handle null or empty parameters?
Web API 项目是在 ASP.NET Core 2.2 中创建的。
我有一个接受自定义 class 作为参数的POST
方法:
public async Task<IActionResult> MyWebMethod(Id id,
[FromBody] IReadOnlyCollection<MyCustomClass> instances)
{
// Process the data
return CreatedAtRoute("GetMyCollection",
new
{
id,
myIds = "someString";
},
responsesObject);
}
代码在收到适当的实例时工作正常。
如果该方法从客户端请求中接收到任何 null 参数或空的 object,那么我需要向客户端发送回 422 响应(422 无法处理的实体)。
我在方法中放置了一些代码来处理这种情况:
if (instances == null || instances.Count == 0)
{
return StatusCode(Convert.ToInt32(HttpStatusCode.UnprocessableEntity), instances);
}
But the issue is: whenever a null or an empty object is passed to the Web API method, the method does not get hit (when I try to debug the method).
处理此类请求并将 422 响应发送回客户端的最佳方法是什么?
将instances
声明为默认参数,然后检查 null
public async Task<IActionResult> MyWebMethod(Id id,
[FromBody] IReadOnlyCollection<MyCustomClass> instances = null)
{
if (instances == null || instances.Count == 0)
{
return StatusCode(Convert.ToInt32(HttpStatusCode.UnprocessableEntity), instances);
}
//Proccess the data
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.