要在 ASP.NET Core 应用程序中传输端点架构 Swagger 文档,需要执行以下步骤:
1.添加 Swagger 包:使用 NuGet 包管理器或 Package Manager Console,将以下包添加到应用程序中。
Swashbuckle.AspNetCore
2.配置 Swagger:在应用程序的 Startup.cs 文件中,使用以下代码段配置 Swagger。
using Swashbuckle.AspNetCore.Swagger; using Swashbuckle.AspNetCore.SwaggerUI; ... public void ConfigureServices(IServiceCollection services) { ... services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" }); }); } ... public void Configure(IApplicationBuilder app, IHostingEnvironment env) { ... app.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); }); }
这将向应用程序添加 Swagger UI 和 Swagger JSON 端点。
3.启用 XML 注释:从 Visual Studio 属性窗口中启用 XML 注释,这将允许 Swashbuckle 自动生成文档。
4.重建应用程序并启动:通过 Visual Studio 或命令行重建应用程序并启动它,在浏览器中访问 Swagger 的端点 URL,即可看到文档。
这是一个示例 Web API 控制器:
[Route("api/[controller]")]
[ApiController]
public class ValuesController : ControllerBase
{
// GET api/values
[HttpGet]
public ActionResult
// GET api/values/5
[HttpGet("{id}")]
public ActionResult Get(int id)
{
return "value";
}
// POST api/values
[HttpPost]
public void Post([FromBody] string value)
{
}
// PUT api/values/5
[HttpPut("{id}")]
public void Put(int id, [FromBody] string value)
{
}
// DELETE api/values/5
[HttpDelete("{id}")]
public void Delete(int id)
{
}
}
在文档中,此控制器中的端点将显示如下:
/api/values (GET)
/api/values/{id} (GET)
/api/values (POST)
/api/values/{id} (PUT)
/api/values/{id} (DELETE)