使用Asp.net core webAPI + Swagger搭建web服务的步骤以及问题点

在下从毕业到如今一直都是用微软的技术栈去开发东西。web

asp.net core发布也有一段时间了,一直没有去系统的关注一下,最近得闲准备用core的webapi作点东西,也赶上了一些小问题,就把这些东西都记录下来。数据库

1.建立工程:
这就没什么可说了,建立工程这个用VS再简单不过了,我选的是Api的选项。
core建立web工程会把entityframework直接放到依赖项当中,这个也没必要细说。json

2.配置swaggerui
启动工程以后,仍是bootstrap的界面,api方法描述也只是描述不能交互,这点仍是挺不方便的。
好在swagger也是能够应用在.net上的。bootstrap

如何配置swagger
https://docs.microsoft.com/en...
微软的这篇文章记述的也是很明白了,你们按图索骥便可。api

有个细节须要注意一下
就是当你们配置好以后asp.net

clipboard.png
有可能会出现这种500的错误,就是加载api描述json失败,遇到这种状况,第一反应是要到ui

clipboard.png

console里面去找信息,反正我遇到的状况就是controller当中方法共用了一个api地址
致使识别api错误。spa

在这提个醒,下面是正常的图像。.net

clipboard.png

3.关于EntityFramework
到这一步基本上事儿办的就差很少了,可是还有一个问题,就是这种状况下,数据库仍是没有准备的状态
因此若是在这种状况下,对数据库进行读写操做那就是500等着你。code

那么如今应该干什么呢。

照我说的作就OK

1.在工程文件中加入我画框的这句话

clipboard.png

<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.0.0" />

2.在此工程文件夹下启动cmd,执行 dotnet ef migrations add InitialCreate指令

clipboard.png

3.用nuget给工程加入Microsoft.EntityFrameworkCore.Tools类库,这样我们就能在PMC当中,输入操做db的指令了

4.执行Update-datebase
成功以后,环境基本就OK了,就能够继续开发了。

若是这篇文章对您有帮助,我深表荣幸。

相关文章
相关标签/搜索