1. 項目創建
1.1 安裝
下載.NETCORE SDK 進行安裝
下載NETCORE RUNTIME進行安裝.
下載Runtime & Hosting Bundle進行安裝
下載地址:https://dotnet.microsoft.com/download/dotnet-core
微軟的安裝在windows方面很簡單,基本就是一鍵安裝.
1.2 開發工具
VisualStudio 2019
1.3建立項目工程
點擊文件創建項目,出現如下圖示
選擇畫紅圈部分,接着出現如下圖示
選擇API,身份驗證為不進行身份驗證。點擊確定后,自動生成相應的模板項目。
文件格式如下
Connected Services:連接的服務。
Properties:進行一些屬性設置。
wwwroot:靜態文件存放位置。
依賴項:也就是需要添加的程序集。
Controller:控制器文件夾,用來進行業務編寫的代碼,我們基本上需要在這個文件中進行數據的傳出與接收。相應的,我們還可以進行各個文件創建,進行層次區分,也可以建立單獨的類項目,進行層次區分,如控制層,服務業務層,數據連接層,模型實體層。
appsettings:配置文件,此處可以編寫一些常量設置,然后在程序中進行讀取。
Program:項目啟動文件。
Startup:項目配置設置文件。
2. 數據庫連接
2.1. MySQL數據庫連接
首先,我們利用nuget進行連接MySQL程序集的下載安裝,如果是無網環境,可以參考我的另一篇文章(關於離線使用nuget進行程序集安裝),如下圖:
接着我們創建一個數據表結構,例如下圖所示(此處為簡單例子):
C#中創建對應的實體類,另外創建一個類繼承dbContext,dbContext是EF框架中非常重要的一個環節,是建立實體類與數據庫連接的橋梁,具體的原理,這里不進行贅述。
具體創建的樣式如下圖所示:
這樣我們就可以進行數據庫的操作了,測試一下:
表明我們的數據庫已經連接成功,可以成功輸出對應數據進行相關的顯示了。
針對上述的連接屬性的情況來看,我們不應該把連接的屬性編寫在代碼中,因此我們要設計一下,把連接的屬性編寫在配置文件中,對appsettings.json, Startup.cs, CoreDbContext.cs進行相關的配置,如圖:
圖中標記為紅色的部分就是我們需要進行修改或添加的部分,這時其實是已經把coreDbContext注入到容器中進行操作,而容器中對Context的注入方式為瞬時注入,因此后面要用到依賴注入的時候,很多時候,在數據層使用context的時候需要把對應的注入都設計為瞬時注入的形式,此處就不進行過多的提及。
我們在進行測試一下,這下我們就不用自己進行context的new操作,由於我們一開始進行設置的時候就已經進行了依賴注入的形式,不過,.netCore中只有構造注入,沒有屬性注入,因此我們就用構造注入的方式進行,如下圖所示:
此時證明我們用這樣的方法也可以進行數據的操作。
2.2 SQL server數據庫連接操作
具體的連接方式與上面的基本一致,不過,連接sqlServer的屬性設置為:
2.3 數據庫Database First與Code First操作
Code First:通過EF 遷移來完成從模型生成數據庫。因此數據庫可以不進行相關表的設計,在C#中直接進行上面所做的出數據庫建表外的操作。
下載安裝Microsoft.EntityFrameworkCore.Tools
打開VS 2017 菜單 工具->nugget包管理器 -> 程序包管理控制台。
輸入Add-Migration MyFirstMigration,接着輸入Update-Database執行,出現Done.表示成功創建數據庫。
Database First:通過現有的數據庫生成模型(此處以SQLServer為主,目前MySQL沒有找到對應的程序集進行此操作)。
安裝Microsoft.EntityFrameworkCore.SqlServer
安裝Microsoft.EntityFrameworkCore.Tools
安裝Microsoft.EntityFrameworkCore.SqlServer.Design
執行如下命令:
Scaffold-DbContext “Server=;Database=DatabaseName;UID =;PWD=” Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models
這樣就輸出到了Models文件夾
修改數據庫IP訪問
安全性 -> 登錄名 -> NT AUTHORITY\SYSTEM -> 服務器角色 ,勾選sysadmin,點擊確認.
3. 發布應用
3.1 點擊WebApi項目右鍵 -> 發布,選擇IIS為發布目標
3.2 項目屬性內的生成切換為Release,
3.2 連接選項卡,選擇文件系統,輸入路徑,點擊下一步
3.4 設置選項卡,配置選擇Release,目標框架netcoreapp2.2,文件發布選項勾上,數據庫也勾選上輸入連接字符串,遷移也需要勾選上輸入連接字符串
4. 部署應用
4.1 啟用IIS
在控制面板中找到啟用或關閉Windows功能,打開IIS相關功能.
4.2 添加網站
打開IIS服務器,右鍵添加網站,物理路徑選擇發布的路徑,點擊連接為,選擇用戶,然后測試設置,修改端口號,點確定
4.3 修改應用程序池,將.NET CLR版本修改為 無托管代碼,點擊確定.
4.4 重啟網站,在瀏覽器上瀏覽端口號,即可.