引用Swagger的Nuget包

Asp.net使用Swagger生成API在线文档

引用成功后在项目中生成一个SwaggerConfig.cs文件

Asp.net使用Swagger生成API在线文档

设置Swagger输出的文档路径

Asp.net使用Swagger生成API在线文档

测试方法
 public class ApiTestController : ApiController
    {
        static List<User> _users = new List<User>() {
            new User(){ Id=1,Name="李四",Address="北京"},
            new User(){ Id=2,Name="李四",Address="山西"},
            new User(){ Id=3,Name="张三",Address="上海"}
        };

        /// <summary>
        /// 获取单个用户数据
        /// </summary>
        /// <param name="id">根据ID获取</param>
        /// <returns></returns>
        [Route("User/{id}")]
        [HttpGet]
        public User Get(int id)
        {
            var user = _users.FirstOrDefault(x => x.Id == id);
            return user;
        }

        /// <summary>
        /// 获取全部用户数据
        /// </summary>
        /// <param name="name">根据名称获取</param>
        /// <returns></returns>
        [Route("User")]
        [HttpGet]
        public List<User> GetUsers()
        {
            return _users;
        }

        /// <summary>
        /// 添加数据
        /// </summary>
        /// <param name="request">添加信息</param>
        /// <returns></returns>
        [Route("User")]
        [HttpPost]
        public User Post(User request)
        {
            _users.Add(request);
            return request;
        }
        /// <summary>
        /// 更新数据
        /// </summary>
        /// <param name="id">编号</param>
        /// <param name="request">用户信息</param>
        /// <returns></returns>
        [Route("User/{id}")]
        [HttpPut]
        public string Put(int id, User request)
        {
            var user = Get(id);
            _users.Remove(user);
            _users.Add(request);
            var a = "更新数据成功为,更新前数据名称为:" + user.Name + ",更新后数据名称为:" + request.Name;
            return a;
        }
        /// <summary>
        /// 删除数据
        /// </summary>
        /// <param name="id">根据ID删除</param>
        /// <returns></returns>
        [Route("User/{id}")]
        [HttpDelete]
        public string Delete(int id)
        {
            var user = Get(id);
            _users.Remove(user);
            return "删除成功";
        }
    }
下面是运行后的结果

Asp.net使用Swagger生成API在线文档
获取全部用户信息
Asp.net使用Swagger生成API在线文档

分类:

技术点:

相关文章: