.net core3.0 webapi搭建(一)
一.创建webapi项目:
生成项目之后,控制器默认生成了一个weatherforecastcontroller
我们可以直接启动项目,f5调试,默认进入weatherforecastcontroller控制器,结果:
到这里最原始的webapi环境已经配置好了!
二.配置swagger插件
插件可以从去swagger官网或github上下载源码,然后将源码(一个类库)引入自己的项目;也可以直接利用nuget包添加程序集应用。这里我们选择第二种
在弹出的页面中,搜索“swashbuckle.aspnetcore”,(如果解决方案里有多个类库,只需要勾选主项目,也就是包含控制器的项目),点击安装(注意事项:我这里用的环境是.netcore 3.0 所以在选择包的时候一定要勾选包括预发行版,5.0.0-rc5)
安装完之后在项目的依赖项里看下是否安装成功。
这时如果运行调试,在域名后面输入/swagger,会发现swagger还没有起作用,因为还没有在项目的启动项里添加swagger服务。
添加swagger 配置:
打开startup.cs类,编辑configureservices类(区别于.netcore 2.0)
public void configureservices(iservicecollection services) { services.addcontrollers(); #region swagger services.addswaggergen(c => { c.swaggerdoc("v1", new openapiinfo { version = "v1.1.0", title = "webapi", description = "webapi" }); }); #endregion }
编辑configure类(注释部分看你自己选择是否默认访问根目录)
public void configure(iapplicationbuilder app, iwebhostenvironment env) { if (env.isdevelopment()) { app.usedeveloperexceptionpage(); } app.usehttpsredirection(); app.userouting(); app.useauthorization(); app.useendpoints(endpoints => { endpoints.mapcontrollers(); }); #region swagger app.useswagger(); app.useswaggerui(c => { c.swaggerendpoint("/swagger/v1/swagger.json", "apihelp v1"); //如果设置根目录为swagger,将此值置空 // c.routeprefix = string.empty; }); #endregion }
启动项目,如图:
配置xml注释文件:
保存之后,你会看见所有类名和方法名会出现警告信息:
只需要在上面把注释加上去即可
编辑startup.cs,修改configureservices函数:
public void configureservices(iservicecollection services) { services.addcontrollers(); #region swagger services.addswaggergen(c => { c.swaggerdoc("v1", new openapiinfo { version = "v1.1.0", title = "webapi", description = "webapi", }); // 为 swagger json and ui设置xml文档注释路径 var basepath = path.getdirectoryname(appcontext.basedirectory);//获取应用程序所在目录(绝对,不受工作目录影响,建议采用此方法获取路径) var xmlpath = path.combine(basepath, "mywebapi.xml"); c.includexmlcomments(xmlpath); }); #endregion }
上一篇: java实现简单扫雷游戏
下一篇: 剑指offer56:删除链表中重复的结点,排序的链表中,删除重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5
推荐阅读
-
一个基于Net Core3.0的WPF框架Hello World实例
-
.net core i上 K8S(一)集群搭建
-
一行代码在Linux服务器上搭建基于.Net Core的博客
-
.Net Core 3.0 WebAPI && MySQL 8.0搭建详情
-
【从零开始搭建自己的.NET Core Api框架】(一)创建项目并集成swagger:1.2 完善
-
.net core搭建微服务一:服务注册
-
基于 ASP.NET Core 2.0 WebAPI 后台框架搭建(0) - 目录概述
-
只要一天就可以搭建测年龄网站How-Old.net?内容详解
-
ASP.NET CORE系列【一】搭建ASP.NET CORE项目
-
asp.net mvc 简单项目框架的搭建过程(一)对Bll层和Dal层进行充分解耦