二、ef的本質
首先在學習程式設計中,最終都要學習的是訪問資料庫,而在c#語言中使用c#語言訪問資料庫技術是微軟提供的ado.net技術
因此在做程式程式設計時,只要有關資料庫的操作,我們總結出來一套經驗:先寫dbhelper,然後建立目標資料庫中的資料物件模型,這個步驟很麻煩,但是又不得不寫
實現更加方便快捷的開發,方便資料庫移植
1.nhibernate
2. mybatis.net
3. linq to sql(已經不使用)
4. ado.net entity framework
ef底層仍然是對ado.net的封裝。ef支援sqlserver、mysql、oracle、sqlite等所有主流資料庫。
它是entity framework提供的一系列操作業務物件的api。這些api都依賴entity client實現對資料庫的訪問
1.作用:將關聯式資料庫模型對映為實體資料模型,由三部分組成,存放在乙個擴充套件名為.edmx的xml檔案中
2. ssdl:負責與資料庫中的資料表做實體對應(就是將資料庫中資料表結構和關係用xml檔案描述)
3. msl:將儲存模型中的字段和概念模型中的屬性對應
4. csdl :概念模型對應的實體類,用實體類表示資料庫中的物件
概念:entity framework實現了一套類似於ado.net中的資料庫操作類,這些操作類稱之為entity client
作用:用來操作emd實體資料模型
作用:翻譯成sql語句,用來訪問資料庫
說明:entity framework是ado.net的乙個技術子集
ado.net的連線類是向資料庫傳送sql命令操作表或試圖,entity client是向edm傳送entity sql
entity client通過entity connection、entity command等類進行模擬ado.net,有自己的sql語句
entity client將查詢轉交給資料庫提供者ado.net provider,並由資料庫提供者翻譯為sql語句
應用程式可以通過更加以應用程式為中心的概念性模型(包括具有繼承性、複雜成員和關係的型別)來工作。
應用程式不再對特定的資料引擎或儲存架構具有硬編碼依賴性。
可以在不更改應用程式**的情況下更改概念性模型與特定於儲存的架構之間的對映。
開發人員可以使用可對映到各種儲存架構(可能在不同的資料庫管理系統中實現)的一致的應用程式物件模型。
多個概念性模型可以對映到同乙個儲存架構。
語言整合查詢支援可為查詢提供針對概念性模型的編譯時語法驗證。
docker初識 Docker 初識
一 docker 簡介 docker是乙個開源的應用容器,使用者可以將web程式和服務打包到乙個輕量級 可以移植的容器中,然後發布到任務流行的linux伺服器上,實現虛擬化。同時完全是沙箱操作,即docker內部是乙個沙箱操作,專案之間不會有任何介面,並且開銷極低。二 docker centos 安...
docker初識 初識 Docker
docker 學習 docker概述 docker安裝 docker命令映象命令 容器命令 操作命令 docker映象!容器資料卷!dockerfile docker網路原理 idea整合docker docker compose docker swarm 簡化的k8s ci cd jenkins ...
初識MySQL初識MySQL語句
什麼是資料庫?資料庫管理系統 資料庫管理員 資料庫伺服器 什麼是表?資料 記錄 mysql select user 檢視當前使用者 mysql exit 也可以用 q quit退出 預設使用者登陸之後並沒有實際操作的許可權 需要使用管理員root使用者登陸 mysql uroot p mysql5....