前言:
.net6lts版本发布已经有若干天了。此处做一个关于使用.net6开发精简版webapi(minim如何练得一手好字alapi)的入门教程,以及vs2022上面的两个强大的新技能(热重载、代码自动反编译)的顺带演示。
1、新建一个项目。此处就命名为someexample:
2、选择.net6版本,并且此处先去掉https配置以及去掉使用控制器的选项:
3、创建完成以后,原始画面如下所示。并且,解决方案一栏只剩下program文件,其他文件都被精简掉了。并且没有main函数入口和命名空间等。
4、接下来开始做几个简单的webapi方法案例。先删掉原有的,替换为自定义的来个webapi方法,一个get,一个po什么是离子方程式st。具体代码如下图所示。
5、运行以后,会打开自带的swagger页面。大佬们可以自行比对代码部分和swagger部分的一些特点。
6、执行helloworld这个get方法的执行结果,如下图所示。
7、执行hellominiapi这个po描写深秋的句子st方法的执行结果,如下图所示。
8、api根据不同的用途,在swagger展示上面,咱们还可以对它进行一些分类。分类通过设置tags标签来实现,具体设置内容:在方法洋务运动的作用的末尾设置withtags,里面指定分类的显示的名称。运行以后的swagger展示效果和有关代码,如下图所示。
9、对api方法进行分代码文件管理。如果api方法很多,全写在program里面也不现实。所以下面做个拓展。新建用于测试使用的静态类testrvice,并且实现一个静态方法testapi。其中,方法的参数必须是thiswebapplication。然后就可以通过传入的参数,来拓展实现webapi,例如此处新增一个rviceapi的api方法,以及有关其他实现,如下图所示。
10、新增拓展的api以后,需要在program文件里面引用使用,详细内容如下图所示。
11、运行以后的swagger展示图。
12、测试下执行结果,返回预期结果,说明测试成功。
13、测试下vs2022热重载的功能,在返回值里面进行修改,然后点击热重载小火苗按钮进行热更新。
14、热更新以后,不需要重新编译,直接在swagger展示页对刚才设置的api方法进行调用,调用结果如下图所示,说明热重载更新成功。将来遇到需要调试的代码时候,大佬们都可以很方便地进行热更新,无需重新编译,可以大大提高效率。
15、接下来是依赖注入的验证测试。新增一个测试服务类testdependencyinjection,具体实现内容如图所示。
16、testdependencyinjection对应的接口itestdependencyinjection内容:
17、在program文件里面,对上面的服务进行注册。此处注册一个单例实例,具体代码如下图展示。
18、接下来是验证依赖注入是否成功。此处我在rviceapi这个webapi方法里面进行注入。注入需要注意事项:在webapi方法的委托类型的参数里面,第一个参数必须是httpcontext;然后后面是自己的参数,此处是注入服务的接口。并且在api方法里面调用了show方法进行验证。
19、运行程序,在swagger展示页面点击执行对应的webapi方法,并查看结果。如下图所示,输出show方法里面的内容,代表依赖注入成功。
20、再扩展个vs2022的隐藏技能:引用的第三方或者nuget包时候(不限制.net版本),在对应的封装的类或者方法上面,按f12,可以直接进入到反编译以后的代码里面去,可以看到封装的源码。例如此处以uswagger为例,在此处按f12进去瞅瞅究竟。
21、正常情况下咱们应该f12进去只能看见属性名称、方法名称,看不到具体实现。而现在是可以看到具体实现的代码的。如下图所示,方法里面的具体代码都有,也可以继续进一步f12去看底层的代码。
以上就是本文的全部内容,希望对哪里找工作大家的学习有所帮助,也希望大家多多支持www.887551.com。
本文发布于:2023-04-04 12:37:50,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/8bd645428bc87dc2ff3dc26a8820565a.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:.net 6精简版webapi教程及热重载、代码自动反编译演示.doc
本文 PDF 下载地址:.net 6精简版webapi教程及热重载、代码自动反编译演示.pdf
留言与评论(共有 0 条评论) |