Asp.Net WebApi添加SwaggerUI是一项重要的开发任务,它能够为API提供友好的文档和测试接口,便于开发者理解和使用API。SwaggerUI是Swagger工具集的一部分,它基于Swagger规范,能够生成交互式的API文档,使API的调试和测试变得更加简单。 在Visual Studio 2017环境下,我们首先需要确保项目是基于Asp.Net WebApi框架构建的。接下来,我们将逐步介绍如何将SwaggerUI集成到WebApi项目中。 1. **安装SwaggerUI** 使用NuGet包管理器或命令行工具(如Package Manager Console),在项目中安装`Swashbuckle.AspNetCore`包。运行以下命令: ``` Install-Package Swashbuckle.AspNetCore ``` 2. **配置Swagger** 在`Startup.cs`文件中,我们需要添加对Swagger的配置。在`ConfigureServices`方法中,注入Swagger服务,并在`Configure`方法中配置Swagger中间件。代码如下: ```csharp public void ConfigureServices(IServiceCollection services) { // 其他服务配置... services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" }); }); } public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { // 其他中间件配置... app.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); }); } ``` 3. **注解API** 要让SwaggerUI能够准确地展示API信息,我们需要在Controller和Action上添加Swagger注解。例如,使用`[HttpGet]`、`[Route]`等特性来定义HTTP方法和路由,以及`[SwaggerResponse]`来指定返回值。 ```csharp [Route("api/[controller]")] [ApiController] public class ValuesController : ControllerBase { [HttpGet] [Route("get")] [SwaggerResponse(HttpStatusCode.OK, Type = typeof(string[]))] public string[] Get() { return new[] { "value1", "value2" }; } } ``` 4. **测试与使用** 完成上述步骤后,重新启动WebApi项目,SwaggerUI将在 `/swagger` 路径下可用。通过浏览器访问 `http://your-api-url/swagger` ,即可看到生成的API文档。在这里,用户可以查看API的详细描述,尝试各种操作并查看响应数据。 5. **进一步优化** SwaggerUI提供了许多自定义选项,比如改变页面主题、添加OAuth2认证等。可以通过查阅官方文档了解更多信息,以便根据项目需求进行调整。 6. **reademe.docx文件** 这个文件可能是包含集成SwaggerUI过程的详细步骤或者注意事项,通常用于指导开发者快速理解并实施这个过程。 将SwaggerUI集成到Asp.Net WebApi项目中,不仅可以提升API的用户体验,还能提高开发效率。通过清晰的文档和交互式测试,开发者可以更轻松地理解和使用API,减少沟通成本,提高开发质量。



























































































































- 1
- 2

- 摇摆的小鸭子2019-08-08谢谢楼主分享
- C丶C魔女想睡觉2017-07-14谢谢!知道怎弄个了!
- weixin_397058542018-05-21谢谢分享!正好学习SwaggerUI+API
- smileberry12017-07-27谢谢楼主分享
- 陆呵呵2018-08-28只是添加Swagger...不是SwaggerUI...没有生成Swagger.json...


- 粉丝: 10
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源


