用户登录
用户注册

webapi 集成swagger

参考资料:stack overflow

我自己写的demo:swaggerdemoapi

在已有的webapi项目或者创建webapi项目中,打开nuget管理器

搜索:swagger

安装截图中的插件到你的webapi项目中 ,安装完成后,项目根目录下也可能会出现swaggernet.cs文件,把这个文件删除掉即可

 

 这个插件是自动安装的,依赖于swagger.net.ui

安装完成之后,发现项目根目录--app_start目录下回产生两个文件

打开swaggernet.cs文件,把我截图中的代码注释掉,不然会报错,报错信息:程序集“swagger.net, version=0.5.1.0, culture=neutral, publickeytoken=null”中的类型“swagger.net.xmlcommentdocumentationprovider”的方法“getdocumentation”没有实现。

 把图中代码注释掉,就没有报错了。

运行起来后,在地址栏后加上/swagger,就可以自动跳转到对应的页面了。

 

集成到项目中报错:not supported by swagger 2.0: multiple operations with path 'api/blob' and method 'post'. see the config setting - "resolveconflictingactions" for a potential workaround

参考资料:not supported by swagger 2.0: multiple operations with path

               

在代码

globalconfiguration.configuration 
                .enableswagger(c =>
                    { ...

里面加上一句:

c.resolveconflictingactions(apidescriptions => apidescriptions.tolist().first());

或者

c.resolveconflictingactions(apidescriptions => apidescriptions.first());

哪个不报错就用哪个,自己看情况。加上之后就不报这个错误了,就成功的运行出来了。

热门评论
暂无评论,快去抢占沙发吧~

分享至

长按复制下方链接,去粘贴给好友吧:
请使用当前手机浏览器底部中间的“添加书签”功能进行收藏。
我知道了
软件
前端设计
程序设计
Java相关