我已经开始使用IHttpActionResult
属性装饰[ResponseType]
方法,目的是使消费者更容易知道如何处理响应。
对于GET来说,这很有意义,因为我可能想对返回的数据做些事情。
但是[ResponseType]
对于不返回任何数据的PUT或POST请求有意义吗,仅返回成功代码?
例如
[HttpPut]
[Route("Contact/{contactId:int}/name", Name = "UpdateContactName")]
[ResponseType(typeof(?????))] // <- what should I put here? do I even need it at all?
public IHttpActionResult UpdateName(int contactId, [FromBody] string name)
{
//...
return StatusCode(HttpStatusCode.Accepted);
}
最佳答案
事实证明,[ResponseType]
确实使在不返回数据的 Controller 方法上有意义。
您可以使用void
类型来确保WebApi帮助文件不会为这些方法显示“样本不可用”消息。
IE。
[ResponseType(typeof(void))]