日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

论ORM之EFCore初篇(快速基于本地数据库实现数据操作)

發布時間:2023/12/4 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 论ORM之EFCore初篇(快速基于本地数据库实现数据操作) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


歡迎大家閱讀《朝夕Net社區技術專刊》第6期

我們致力于.NetCore的推廣和落地,為更好的幫助大家學習,方便分享干貨,特創此刊!很高興你能成為忠實讀者,文末福利不要錯過哦!

前言:

今天準備帶大家一站式學習ORM框架--EFCore;這里給大家介紹EF支持的本地數據庫、單元測試、模型生成、數據遷移等。后續內容將持續更新!

正文:

說起ORM框架,我現在依舊感嘆,我覺得ORM框架真是我們應用型系統開發的一大福利;其實早在好多年前,我個人曾經使用泛型+反射封裝了一套通用的數據庫訪問層;那時候還覺得,哇,牛掰的很,好高級的樣子;但是從我見到這些成型的OMR框架的時候,原來ORM框架竟然如此簡單!那ORM框架是什么呢?

ORM 對象關系映射(Object Relational Mapping),如下圖所示,其實就是以面向對象的思想對數據庫的訪問操作做個封裝,開發者在使用的時候,不需要關注數據庫的各種Sql語句,通過對OMR的操作,達到對數據庫數據的增刪改查。讓開發者降低對數據庫的學習成本;一個字,就是爽!

下面我就EFCore的一些常規用法做一下做以下介紹:

01

PART

EFCore準備環境

本地演示環境:Visual Studio2019 --- Vsersion:16.4.4 ? +? NetCore3.1.2

個人建議使用Vs2019 升級最新版即可!

Nuget安裝:

  • 1.??? Microsoft.EntityFrameworkCore——使用EFCore的核心包,支持了

  • 2.??? Microsoft.EntityFrameworkCore.Relational——關系數據庫提供者共享EF Core組件

  • 02

    PART

    EFCore支持本地數據庫

    在實際的項目開發中,我們一般都是使用EFCore去連接各種關系型數據庫,例如SqlServer、Orcale、MySql等;在EFCore支持了本地數據庫(安裝Vs的時候自帶的數據庫),像我們在學習或者或者在出EFCore的學習Demo 的時候可以做一些測試工作;當然在之前的.NetFramework環境下的EF也是支持的;下面我就EFCore連接本地數據庫展示一個單元測試的Demo。

    第一步:在解決方案下創建一個單元測試如圖1

    圖1

    圖2

    之前在.NetFramework環境下的EF,支持有多種和數據庫的連接,Codefirst 數據庫先行,DbFirst數據庫先行,ModelFirst模型先行;在EFCore中更加推崇CodeFirst,更加推崇從代碼先行;如果不是初學者,應該都是知道EF是通過上下文DbContext對數據庫做操作的;所以需要定義DbContex;代碼如下圖:

    第二步:定義DbContext上下文:

    如此就可以使用這個DbContext,有上下文,有配置信息DbContextOptions配置參數;那配置參數DbContextOptions怎么配置呢?如圖4;這使用到了內存數據庫,索引需要Nuget引入程序包:Microsoft.EntityFrameworkCore.InMemory;這個包就是支持內存數據庫。

    圖3

    第三步:定義配置信息參數DbContextOptions

    圖4

    以上做好準備工作:定義好DbContext上下文;上下文需要的配置信息就可以直接通過上下文DbContext訪問內存數據庫了。

    第四步:還需要定義實體,ORM框架大部分都是通過實體訪問數據庫做數據的增刪改查的:

    如圖5

    圖5

    第五步:就可以去調用測試一下了:如圖6,測試結果如 圖7

    圖6

    測試結果如圖7? 圖8

    圖7

    圖8

    那么以上7步描述EFCore基于本地數據庫已經做了一個簡單的新增查詢,還沒有涉及到我們工作中使用的關系型數據庫;可能有同學會疑惑,這樣做有啥意義呢?其實在我們實用EFCore的時候,尤其是在初期,為了調試測試,快速的出一個EFCore的Demo;這個過程是非常必要的。

    總結

    以上是生活随笔為你收集整理的论ORM之EFCore初篇(快速基于本地数据库实现数据操作)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。