首页
/
每日頭條
/
科技
/
跟着官網學ASP.NETCore6.0之通過EF
跟着官網學ASP.NETCore6.0之通過EF
更新时间:2024-07-17 08:25:27

前面,我們跟着微軟官網教程,創建了一個簡單的Demo Webapi程序,這節,我們繼續跟着教程學一下簡單的EF Core操作數據庫

連接數據庫自然需要相應的數據庫驅動,在微軟官方也給我列出了相應數據庫的驅動程序,如下圖:

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)1

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)2

這裡我的數據庫是MySQL 8.0.24,所以需要安裝Pomelo.EntityFrameworkCore.MySql,它支持MySQL和MariaDB。

安裝MySQL驅動

安裝NuGet包方式有多種,如直接在包命令行輸入Install-Package Pomelo.EntityFrameworkCore.MySql -Version 6.0.0進行安裝,或者通過.NET CLI執行dotnet add package Pomelo.EntityFrameworkCore.MySql --version 6.0.0進行安裝,又或者在.csproj中加入<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="6.0.0" />進行安裝,等等。當然我還是比較喜歡圖形化操作,在VS中依賴項(右鍵)->選擇NuGet程序包->輸入Pomelo.EntityFrameworkCore.MySql回車搜索->點擊安裝

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)3

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)4

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)5

配置數據庫

我們先在appsettings.json增加數據庫連接,如下:

1 2 3 4 5 6 7 8 9 10 11 12 13

{ "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*", "ConnectionStrings": { "MysqlConnectionString": "Server=localhost;User=hrp;Password=hrp123456*;Database=hrp" } }

繼續去Program.cs配置數據庫

1 2 3 4 5 6

var serverVersion = new MySqlServerVersion(new Version(8, 0, 24)); string connectionString = builder.Configuration.GetConnectionString("MysqlConnectionString"); builder.Services.AddDbContext<DemoContext>(opt => { opt.UseMySql(connectionString, serverVersion); });

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)6

支持,數據庫便配置好了,我接下來便是遷移數據庫

遷移數據庫

這裡我們從工具->NuGet包管理器->程序包管理器控制台,執行Add-Migration InitialCreate命令

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)7

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)8

執行成功後,會在項目下生成遷移文件,并且會在數據庫中創建一個名為__efmigrationshistory的記錄表

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)9

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)10

我們打開20220116090024_InitialCreate即可看到生成好的遷移代碼,我們可以看到,Id列為MySqlValueGenerationStrategy.IdentityColumn,會自動生成為Id遞增。我們在程序包管理器控制台繼續執行Update-Database命令,它便會幫我們在數據庫中創建好表

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)11

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)12

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)13

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)14

這些字段名和字段類型及長度是可以指定的,這個後面再詳細學習

測試WebApi

數據庫已連接,數據庫中的表也已生成好,那麼接下來就去測試下我們的API能否正常工作。

新增數據

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)15

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)16

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)17

查詢數據

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)18

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)19

跟着官網學ASP.NETCore6.0之通過EF(跟着官網學ASP.NETCore6.0之通過EF)20

這一節,我們簡單的了解了一下ASP.NET Core 6.0通過EF Core6.0來操作MySQL數據庫,下一節,我們繼續學習ASP.NET Core 6.0打印日志。

EF Core功能很是強大,并不是通過幾個簡單的操作就能學習得完的,後面我們抽時間繼續深入一下。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
pur熱熔膠複合機如何清理(PUR熱熔膠複合機安裝安全)
pur熱熔膠複合機如何清理(PUR熱熔膠複合機安裝安全)
     PUR熱熔膠複合機   1. 安裝PUR熱熔膠複合機時,必須接通一條正确且有效的接地線。以免發生觸電的危險。2. 根據PUR熱熔膠複合機及其附屬周邊設備所需的負載,檢查所使用的電源線,與絕緣保護是否符合規定,導線的負載必須高于PUR熱熔膠複合機的額定功率。3. 确保外界接入至PUR熱熔膠複合機之電壓是符合本機設計的電壓核定功率。   複合機械_機械...
2024-07-17
怎麼查看電腦品牌和生産日期(生産日期怎麼查)
怎麼查看電腦品牌和生産日期(生産日期怎麼查)
     1、利用鍵盤組合快捷鍵“Windows R”,打開“運行”。輸入“cmd”,點确定。   2、在彈出的命令提示符界面,複制輸入“systeminfo”,按回車運行。      3、系統會加載顯示計算機的一系列信息,找到“BIOS版本”這一項。   4、BIOS 版本号後面顯示的日期,基本就是電腦的生産日期。      需要說明的是,該日期其實隻是 ...
2024-07-17
諾維茨基職業生涯最高分62分(數據酷賽季新高)
諾維茨基職業生涯最高分62分(數據酷賽季新高)
     球長社圈4月10日訊 在今天結束的一場常規賽中,獨行俠主場120-109擊敗太陽。獨行俠前鋒德克-諾維茨基此役得到30分,創下個人本賽季常規賽單場得分新高。   本場比賽,諾維茨基上場32分鐘,31投11中,三分14中5,得30分8籃闆3助攻1蓋帽。   (編輯:蠟筆臀新)   喜歡籃球的朋友,想看NBA直播、錄像、球星INS動态、及時的籃球新聞、...
2024-07-17
華為年底最佳理财産品(華為11月知識榜單發布)
華為年底最佳理财産品(華為11月知識榜單發布)
  今日,華為視頻聯合新知榜發布11月知識課程熱度Top30以及國學、個人提升、K12分類榜單Top10,下面我們一起來看看榜單詳情。   本次熱度總榜前三名分别是:《零基礎小白理财訓練營》、《中醫養生之八段錦》和《道德經的秘密》。      簡七理财切中小白人群,推出入門級的理财課程産品《零基礎小白理财訓練營》,以專業的理财知識内容獨占鳌頭,奪得冠軍。  ...
2024-07-17
人工智能網站合集(12個優秀的人工智能網站)
人工智能網站合集(12個優秀的人工智能網站)
  人工智能已經促使很多傳統業務發生了進化,變得更快、更方便,也更簡單了。AI 提高了我們的工作和生活效率,給我們提供了更多的靈感,那我們應該學會的就是如何更好地使用 AI。來看看本文中介紹的強大的 AI 工具吧。      Playground-AIPlayground AI 是一個在線圖片編輯平台,你隻需要輸入文字指令就可以對照片進行編輯修改。在平台上創...
2024-07-17
Copyright 2023-2024 - www.tftnews.com All Rights Reserved