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#/ 地址就可以訪問了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM