C# · 12月 25, 2021

c# – 哪个ResponseType应该用于PUT或POST请求的IHttpActionResult?

我已经开始使用[ResponseType]属性来装饰我的IHttpActionResult方法,目的是让消费者更容易知道如何处理响应.

这对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]确实对不返回数据的控制器方法有意义.

您可以使用void类型来确保WebApi帮助文件不会为这些方法显示“示例不可用”消息.

[ResponseType(typeof(void))]