new ObjectResult(null) StatusCode设置为200返回204



我有返回Task<IActionResult>的azure函数,当我创建新的ObjectResult对象(Microsoft.AspNetCore.Mvc命名空间)时,将其主体设置为null并将StatusCode设置为200,它实际上返回204(没有内容)。

ObjectResult objectResult = new ObjectResult(null);
objectResult.StatusCode = 200;
return objectResult;

但是当我将objectResult.StatusCode设置为201 (created)时,它返回created。我不得不将虚拟值放入ObjectResult构造函数参数,最终得到200:

ObjectResult objectResult = new ObjectResult("autotest");

这个行为是预期的还是错误的?

为什么不直接返回StatusCodeResult呢?

return new StatusCodeResult(200);

最新更新