WebApi集成Swagger

1.新建一个WebApi空项目

2.新建一个Person实体类:

public class Person
{
public int ID { get; set; }
public string UserName { get; set; }
public string Password { get; set; }
}

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();
}
}

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);
}

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

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

http://www.cnblogs.com/myindex/p/5464909.html

Web Api集成Swagger的更多相关文章

  1. asp.net core web api 生成 swagger 文档

    asp.net core web api 生成 swagger 文档 Intro 在前后端分离的开发模式下,文档就显得比较重要,哪个接口要传哪些参数,如果一两个接口还好,口头上直接沟通好就可以了,如果 ...

  2. Asp.Net Core Web Api 使用 Swagger 生成 api 说明文档

    最近使用 Asp.Net Core Web Api 开发项目服务端.Swagger 是最受欢迎的 REST APIs 文档生成工具之一,进入我的视野.以下为学习应用情况的整理. 一.Swagger 介 ...

  3. SimpleInjector与MVC4集成,与Web Api集成,以及通过属性注入演示

    SimpleInjector与MVC4集成,与Web Api集成,以及通过属性注入演示   1,与MVC集成 见http://simpleinjector.codeplex.com/wikipage? ...

  4. ASP.NET Web API 使用Swagger

    ASP.NET Web API 使用Swagger使用笔记   最近换了工作,其中Webapi这块没有文档,之前有了解过Swagger借此机会好好整理下常用的地方分享给有需要的小伙伴. 概述: 1.s ...

  5. Asp.Net MVC Web API 中Swagger教程,使用Swagger创建Web API帮助文件

    什么是Swagger? Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法 ...

  6. ASP.NET Web API 使用Swagger生成在线帮助测试文档,支持多个GET

    以下为教程: 在现有webapi项目中,nuget安装以下两个插件 swagger.net.ui swashbuckle 安装完毕后可以卸载Swagger.NET,此处不需要! 安装完毕后屏蔽以下代码 ...

  7. asp.net core Api集成Swagger

    当我们通过vs创建了一个api项目后,便可以开始集成swagger了 一.Swagger集成 从“程序包管理器控制台”窗口进行安装,执行Install-Package Swashbuckle.AspN ...

  8. Web API集成Azure AD认证

    1.声明的介绍 基于角色的授权管理,适用于角色变化不大,并且用户权限不会频繁更改的场景. 在更复杂的环境下,仅仅通过给用户分配角色并不能有效地控制用户访问权限. 基于声明的授权有许多好处,它使认证和授 ...

  9. ASP.NET Web API 使用Swagger生成在线帮助测试文档

    Swagger-UI简单而一目了然.它能够纯碎的基于html+javascript实现,只要稍微整合一下便能成为方便的API在线测试工具.项目的设计架构中一直提倡使用TDD(测试驱动)原则来开发,sw ...

随机推荐

  1. android代码控制seekbar的样式

    package com.zte; import android.app.Activity; import android.graphics.Color; import android.graphics ...

  2. JavaScript实现复制功能

    这两天在做Web前端时,遇到需求通过 js 实现文本复制的功能. 先不考虑浏览器的兼容性,看看各浏览器对复制功能的支持情况: 1.IE浏览器 ,解决方法有三种,代码如下: function copy( ...

  3. 开始着手Oracle中Scott用户的管理系统

    准备好长时间,一直想把最近所学用于实践,正好想到Oracle的Scott用户的表设计还算合理,且自己也很熟悉,现将整个系统的架构设定如下: 1.数据库不用说,Oracle 11g 的 Scott 用户 ...

  4. Table中的JCheckBox TableHeader的全选(全反选)功能

    菜鸟学习ing class CheckDefaultModel extends DefaultTableModel /* * To change this template, choose Tools ...

  5. 1941. Scary Martian Word

    1941. Scary Martian Word 这道题 一个长度为3的字符串视为 一个 火星文 字母(ASCII 33-122) ,给出一个火星人认为恐怖的单词(由火星字母组成) 然后 给你一篇文章 ...

  6. jquery mobile左右滑动切换页面

    jquery mobile左右滑动切换页面 $(function() {$("body").bind('swiperight', function() {  $.mobile.ch ...

  7. Android SurfaceView实现静态于动态画图效果

    本文是基于Android的SurfaceView的动态画图效果,实现静态和动态下的正弦波画图,可作为自己做图的简单参考,废话不多说,先上图, 静态效果: 动态效果: 比较简单,代码注释的也比较详细,易 ...

  8. ubuntu 常用软件

    terminator:任意分割控制台 Sublime Text:文本编辑器,也是轻量级的IDE Wireshark:抓包工具 Okular:PDF等文档编辑工具 yEd:流程图等制图软件 Shutte ...

  9. Delphi反射

    最近在写一个框架,需要用到反射,与C# java这些原生支持反射的语言不同,delphi对反射的支持相对要弱一些,但也够用了,其实C#的大部分的思想还是从 delphi而来,毕竟都是安德鲁斯的杰作. ...

  10. 找到程序真正的入口(使用IDE追踪)

    一.程序的真正入口 main或WinMain只是“语法规定的程序入口” 并不是“应用程序入口”. 我们使用VC++ 6.0 的栈回溯功能,找到main函数之前的代码.菜单View -> Debu ...