您需要Swagger.NET集成到您的项目,以便结束与以下控制器:
public class SwaggerController : ApiController { /* snip */ }
,你也应该有注册下列路线:
context.Routes.MapHttpRoute (
name : "Swagger",
routeTemplate: "api/swagger"
defaults: new
{
controller = "Swagger",
action = "Get",
});
假设正在工作,你应该可以打电话给/ api/swagger,并得到如下内容:
{
apiVersion: "4.0.0.0",
swaggerVersion: "2.0",
basePath: "http://localhost:5555",
resourcePath: null,
apis: [
{
path: "/api/docs/Values",
description: "No Documentation Found.",
operations: [ ]
},
{
path: "/api/docs/Home",
description: "No Documentation Found.",
operations: [ ]
}
]
}
然后在SwaggerUI/index.html的你要更新discoveryUrl:
<script type="text/javascript">
$(function() {
window.swaggerUi = new SwaggerUi({
discoveryUrl: "http://localhost:5555/api/swagger",
apiKey:"",
dom_id:"swagger-ui-container",
supportHeaderParams: false,
supportedSubmitMethods: ['get', 'post', 'put']
});
window.swaggerUi.load();
});
</script>
我想做与此相反http://stackoverflow.com/questions/10560857/swagger-with-static-documentation – theGeekster
您是否发现问题的任何解决方案?在没有运行Web服务器的情况下,我对json规范的生成也很感兴趣。 – Shrike
不,我找不到任何解决方案,它支持WebAPI的属性路由。 – theGeekster