WebApi集成Swagger

1.新建一个WebApi空项目

2.新建一个Person实体类:

复制代码
public class Person
    {
        public int ID { get; set; }
        public string UserName { get; set; }
        public string Password { get; set; }
    }
View Code
复制代码

3.新建一个PersonAPI控制器(PersonController)

复制代码
public class PersonController : ApiController
    {
        /// <summary>
        /// 根据ID获取单个人的详细信息
        /// </summary>
        /// <param name="id">人员ID</param>
        /// <returns></returns>
        [HttpGet, Route("person/GetPerson")]
        public Person GetPerson(int id)
        {
            return new Person { ID = id, UserName = "张三", Password = "admin888" };
        }
        /// <summary>
        /// 获取人员列表信息
        /// </summary>
        /// <returns></returns>
        [HttpGet, Route("person/GetPersons")]
        public List<Person> GetPersons()
        {
            List<Person> list = new List<Person> { 
                new Person{ ID = 3, UserName = "张三", Password = "admin888"},
                new Person{ ID = 4, UserName = "李四", Password = "admin888"},
                new Person{ ID = 5, UserName = "王五", Password = "admin888"},
                new Person{ ID = 6, UserName = "小七", Password = "admin888"}
            };
            return list;
        }

        /// <summary>
        /// 添加人员
        /// </summary>
        /// <param name="product"></param>
        /// <returns></returns>
        [HttpPost, Route("person/add")]
        public int AddProduct(Person person)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// 更新删除人员
        /// </summary>
        /// <param name="personId"></param>
        /// <param name="person"></param>
        [HttpPost, Route("person/update")]
        public void UpdatePerson(int personId, Person person)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// 删除人员
        /// </summary>
        /// <param name="personId"></param>
        [HttpDelete, Route("product/delete")]
        public void DeletePerson(int personId)
        {
            throw new NotImplementedException();
        }
    }
View Code
复制代码

4.通过NuGet程序包安装swashbuckle程序包

5.安装后App_Start目录下会生成一个SwaggerConfig.cs文件,修改此文件:

取消c.IncludeXmlComments(GetXmlCommentsPath())的注释,同时添加GetXmlCommentsPath函数

复制代码
private static string GetXmlCommentsPath()
        {
            return string.Format(@"{0}\bin\XXXX.XML", AppDomain.CurrentDomain.BaseDirectory);
        }
View Code
复制代码

其中"XXX.xml"为"你的项目名.xml"
6.右键项目-属性-生成,勾选"xml文档文件"

7.好了,生成好之后通过http://主机/swagger/ui/index#/ 地址就可以访问了

 

posted @   不哼不哈  阅读(2491)  评论(7编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
点击右上角即可分享
微信分享提示