我看了一篇文章http://www.asp.net/web-api/overview/getting-started-with-aspnet-web-api/creating-api-help-pages,它运作正常。但是,我希望在发送这些回复时添加所有可能的响应和条件。是否有任何工具可以分析每个WebAPI方法,找到所有带有响应的地方,为什么会发生这种情况并自动创建相关文档呢?
即。我有以下代码:
public HttpResponseMessage GetEditorialRequests()
{
SetUser();
try
{
var r_list = _service.RequestList(user.Id);
if (r_list.Count > 0)
{
var list = mapper.Map<List<SmartphonePhotographerRequestElementApiModel>>(r_list);
return Request.CreateResponse<List<SmartphonePhotographerRequestElementApiModel>>(HttpStatusCode.OK, list);
}
else
return Request.CreateResponse(HttpStatusCode.NoContent);
}
catch (PixlocateBusinessLogic.NoSmartphonePhotographerLocationException)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, new HttpError("User does not have any locations") { { "CustomStatusCode", 466 } });
}
}
我想有文档,描述该方法返回:
答案 0 :(得分:2)
您是否尝试过Swagger(和Swashbuckle)?
<强>扬鞭强>
Swagger是RESTful API的简单而强大的代表。凭借全球最大的API工具生态系统,数千名开发人员几乎在所有现代编程语言和部署环境中都支持Swagger。使用支持Swagger的API,您可以获得交互式文档,客户端SDK生成和可发现性。
<强> Swashbuckle 强>
向WebApi项目无缝添加Swagger!结合ApiExplorer和Swagger / swagger-ui为您的API消费者提供丰富的发现,文档和游乐场体验。除了Swagger生成器之外,Swashbuckle还包含swagger-ui的嵌入式版本,一旦安装了Swashbuckle,它将自动提供。这意味着您可以使用灵活的发现UI来补充您的API,以帮助消费者进行集成。最重要的是,它需要最少的编码和维护,让您专注于构建一个很棒的API!
我在许多项目中使用它们,非常容易使用且非常强大。