EF Core實操,數(shù)據(jù)庫生成實體,遷移
大家好,我是行不更名,坐不改姓的宋曉剛,下面將帶領(lǐng)大家進入C#編程EF Core數(shù)據(jù)庫基礎(chǔ)入門知識,如何連接數(shù)據(jù)庫,如何編寫代碼,跟上我的步伐進入EF Core數(shù)據(jù)庫下的世界。
家人們,如果有什么不懂,可以留言,或者加我聯(lián)系方式,一起進入微軟技術(shù)的開拓。
- 微信:15319589104
- QQ: 2981345658
EF Core (Entity Framework Core) 是一個開源的、輕量級的、靈活的對象關(guān)系映射(ORM)庫,它是.NET平臺上用于數(shù)據(jù)訪問的對象關(guān)系映射器。EF Core 支持多種數(shù)據(jù)庫,包括 SQL Server、MySQL、PostgreSQL、SQLite 等。
在開始使用 EF Core 進行數(shù)據(jù)庫操作之前,通常需要先定義實體類,這些實體類對應(yīng)數(shù)據(jù)庫中的表。然后,通過遷移(Migrations)來創(chuàng)建或更新數(shù)據(jù)庫結(jié)構(gòu)。
一、介紹:
1.0O/RM框架:存放在專門的對象–映射文件,一種框架模式,ORM就是專門用來操作數(shù)據(jù)庫的。
正常訪問數(shù)據(jù)庫:
- 1.編寫大量的SQL語句
- 2.代碼量相對較大
2.0ORM訪問數(shù)據(jù)庫解決:
- 面向?qū)ο蟮乃枷肴ゲ僮鲾?shù)據(jù)庫。
- 上手簡單,能實現(xiàn)功能,必然還是要轉(zhuǎn)換成Sql語句,必然會有反射。
- 性能出現(xiàn)了問題,緩存可以進行解決。
3.0ORM快速上手EFCore
-
1.0 Dfirst 數(shù)據(jù)庫先行(先創(chuàng)建數(shù)據(jù)庫,在生成相對的實體類)
-
2.0 CodeFirst 遷移文件,代碼先行,只管代碼,只關(guān)注對象生成數(shù)據(jù)庫(寫實體類,通過命令進行數(shù)據(jù)庫同步)
3.1安裝3個Nugut包
Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore.Tools
3.2命令執(zhí)行:
1.0.Net7以下版本執(zhí)行:
Scaffold-DbContext "Data Source=PC-202206030027;Initial Catalog=CustomerDB;User ID=sa;Password=sa123" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Force
2.0.Net7執(zhí)行:
Scaffold-DbContext "Data Source=PC-202206030027;Initial Catalog=CustomerDB_EFCORE;User ID=sa;Password=sa123;TrustServerCertificate=true" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Force
注意:數(shù)據(jù)庫鏈接字符串中需要加入一個TrustServerCertificate=true,倆個命令不同的方式,是因為多了TrustServerCertificate=true
命令說明:
-OutputDir *** 實體文件所存放的文件目錄
-ContextDir *** DbContext文件存放的目錄
-Context *** DbContext文件名
-Schemas *** 需要生成實體數(shù)據(jù)的數(shù)據(jù)表所在的模式
-Tables *** 需要生成實體數(shù)據(jù)的數(shù)據(jù)表的集合
-DataAnnotations
-UseDatabaseNames 直接使用數(shù)據(jù)庫中的表名和列名(某些版本不支持)
-Force 強制執(zhí)行,重寫已經(jīng)存在的實體文件
二、實操:
Db數(shù)據(jù)庫先行
1.0在Sql server中添加自己需要的數(shù)據(jù)庫,表,以及字段。
2.0創(chuàng)建控制臺應(yīng)用程序,我們這里選擇不使用頂級語句,這樣Program中會生成主類Program。
文章來源:http://www.zghlxwxcb.cn/news/detail-814879.html
3.0安裝EF Core的Nugut包。文章來源地址http://www.zghlxwxcb.cn/news/detail-814879.html
Microsoft.EntityFrameworkCore
Microsoft.EntityFr
到了這里,關(guān)于EF Core實操,數(shù)據(jù)庫生成實體,遷移的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!