2015-08-31 56 views
1

我使用Swagger来记录我的API,但是我正在寻找替代工具,让我的API有多个“办法”与同一个动词+路径,例如:文档WEB框架API的

[RoutePrefix("api/Customer")] 
public class CustomerController : ApiController 
{ 
    [HttpGet] 
    [Route("")] 
    public ClienteDTO GetCustomerByContractId(int contractId) 
    { 
     //... 
    } 

    [HttpGet] 
    [Route("")] 
    public ClienteDTO GetCustomerByAccountId(int accountId) 
    { 
     //... 
    } 
} 

这个工作在ASP.NET WEB API罚款给出一个“GET”请求将打在服务器端正确的方法:

http://example.com/api/Customer?contractId=1 
http://example.com/api/Customer?accountId=1 

但扬鞭不支持(https://github.com/swagger-api/swagger-spec/issues/182)。

有人知道一个支持这个的替代文档框架吗?

回答

1

有微软的NuGet包不具有此限制:

https://www.nuget.org/packages/Microsoft.AspNet.WebApi.HelpPage 

enter image description here

这是微软和公报它非常容易定制,因为它增加了文件到您的解决方案(一控制器,一个css和一些cshtml文件)。唯一的问题是你不能像swashbuckle那样对你的API进行测试调用(我说,直接从你的文档页面做一个POST,GET等)。我在cshtml文件中做了一些修改,并且很容易地添加了这个功能。