怎么在Swagger调用WebApi时显示参数的注释

不说废话直接上解决方案。

一般都是使用Model类库,因为传参的话都是Model里来的,当然如果有定义比如:出入参的类库,下面我就按Model类库来说,其它类库也按以下步骤来就行了。

第一步:选中Model类型右键——属性——生成——XML文档文件打勾,后面会出来一个路径,你只需要复制一下最后的文件名就行了(包含后缀)。

 第二步:在App_Start文件夹下面的SwaggerConfig.cs文件夹配置跨域添加这一行代码(一个类库对应添加一行)

添加代码如下:

c.IncludeXmlComments(Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, @"bin\这里就把上面生成的文件名粘贴过来就可以了(包含后缀)"));

两步完成后,就可以看到使用Swagger调用时,可以显示出注释了。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个使用Swagger描述API接口的Web API项目的示例: ```csharp using System.Collections.Generic; using Microsoft.AspNetCore.Mvc; namespace MyWebApi.Controllers { [ApiController] [Route("[controller]")] public class UsersController : ControllerBase { /// <summary> /// 获取所有用户 /// </summary> /// <returns>用户列表</returns> [HttpGet] [ProducesResponseType(typeof(IEnumerable<User>), 200)] public IActionResult GetAllUsers() { return Ok(new List<User> { new User { Id = 1, Name = "Alice" }, new User { Id = 2, Name = "Bob" } }); } /// <summary> /// 获取指定用户 /// </summary> /// <param name="id">用户ID</param> /// <returns>用户信息</returns> [HttpGet("{id}")] [ProducesResponseType(typeof(User), 200)] [ProducesResponseType(404)] public IActionResult GetUser(int id) { var user = new User { Id = id, Name = "Alice" }; if (user == null) { return NotFound(); } return Ok(user); } /// <summary> /// 添加用户 /// </summary> /// <param name="user">用户信息</param> /// <returns>添加结果</returns> [HttpPost] [ProducesResponseType(typeof(User), 201)] [ProducesResponseType(400)] public IActionResult AddUser(User user) { if (user == null) { return BadRequest(); } user.Id = 3; // 模拟分配ID return CreatedAtAction(nameof(GetUser), new { id = user.Id }, user); } /// <summary> /// 更新用户 /// </summary> /// <param name="id">用户ID</param> /// <param name="user">用户信息</param> /// <returns>更新结果</returns> [HttpPut("{id}")] [ProducesResponseType(204)] [ProducesResponseType(400)] [ProducesResponseType(404)] public IActionResult UpdateUser(int id, User user) { if (user == null || user.Id != id) { return BadRequest(); } // 更新用户信息 return NoContent(); } /// <summary> /// 删除用户 /// </summary> /// <param name="id">用户ID</param> /// <returns>删除结果</returns> [HttpDelete("{id}")] [ProducesResponseType(204)] [ProducesResponseType(404)] public IActionResult DeleteUser(int id) { // 删除用户信息 return NoContent(); } } public class User { public int Id { get; set; } public string Name { get; set; } } } ``` 在上面的示例中,我们使用了 `[ApiController]` 和 `[Route]` 特性来定义控制器和路由。其中,`[ApiController]` 告诉 ASP.NET Core 这是一个 Web API 控制器,并使用默认的行为,例如自动模型绑定和验证。`[Route]` 特性指定了控制器的路由前缀。 每个操作方法都有一个 HTTP 动词特性,例如 `[HttpGet]`,指定了该方法对应的 HTTP GET 请求。我们还使用了`[ProducesResponseType]` 特性,用于指定操作方法的返回类型及其 HTTP 状态码。这些信息可以帮助 Swagger 自动生成 API 文档。 在上面的示例中,我们使用了标准的 HTTP 状态码和响应模型。但是,你也可以使用自定义的状态码和响应模型,只需在`[ProducesResponseType]` 特性中指定即可。 当你启用 Swagger 后,你可以在浏览器中访问 `http://localhost:<port>/swagger` 查看自动生成的 API 文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值