如何使用Swagger / ServiceStack指定Response类并返回状态代码

时间:2013-01-24 19:04:07

标签: c# servicestack swagger

ServiceStack.Api.Swagger v3.9.33是否可以使用Swagger描述API操作的响应和返回的状态代码?也许是通过响应类/属性等的属性修饰

与pet store API中以下示例操作的突出显示部分类似: (http://petstore.swagger.wordnik.com/

enter image description here

我只能看到HTTP方法和请求DTOS可以在https://github.com/ServiceStack/ServiceStack/wiki/Swagger-API上进行修饰,快速浏览代码看起来可能尚不支持,https://github.com/ServiceStack/ServiceStack/tree/master/src/ServiceStack.Api.Swagger

3 个答案:

答案 0 :(得分:3)

截至目前,如果你拉开ServiceStack仓库的头部,它是可能的。我刚刚获得了一个合并的pull请求,它添加了用[ApiResponse]属性来装饰您的请求DTO的选项。有关详细信息,请参见此处:

https://github.com/ServiceStack/ServiceStack/issues/590#issuecomment-17575292

答案 1 :(得分:2)

尝试使您的请求(您已应用RouteAttribute的地方)实施ServiceStack.ServiceHost.IReturn<TResponseType>,其中TResponseType是您的响应类型。

所以示例应该类似于:

[Route("/todos")]
[Route("/todos/{Ids}")]
public class Todos : IReturn<List<Todo>>

IReturn<List<Todo>>正是您要找的

答案 2 :(得分:1)

我正在寻找解决同一问题的方法。

我得出的结论是,它目前尚未实施 - &GT;请参阅:https://github.com/ServiceStack/ServiceStack/blob/master/src/ServiceStack.Api.Swagger/SwaggerApiService.cs以获取证据

因此,目前没有响应模型或状态代码的集成。