C#筆記之EF Code First 數(shù)據(jù)模型 數(shù)據(jù)遷移
EF的基本使用 一、EF的創(chuàng)建二、修改數(shù)據(jù)庫(kù)一、加數(shù)據(jù)庫(kù)字段二、加數(shù)據(jù)庫(kù) 表

一、EF的創(chuàng)建
第一步: 創(chuàng)建一個(gè)類庫(kù)

第二步: 選擇類庫(kù)

第三步:選擇ADO.NET 實(shí)體數(shù)據(jù)模型,名稱和你數(shù)據(jù)庫(kù)名字對(duì)應(yīng),我的叫LetDB


第四步:出現(xiàn)了窗體

先解釋一下這些EF模型:
1.來(lái)自數(shù)據(jù)庫(kù)的EF設(shè)計(jì)器:
先有數(shù)據(jù)庫(kù),根據(jù)數(shù)據(jù)庫(kù)生成模型
2.空EF設(shè)計(jì)模型:
模型優(yōu)先,通過(guò)設(shè)計(jì)的模型生成數(shù)據(jù)庫(kù)
3.空 Code First 模型:
代碼優(yōu)先,通過(guò)代碼生成數(shù)據(jù)庫(kù)
4.來(lái)自數(shù)據(jù)庫(kù)的Code First:
根據(jù)數(shù)據(jù)庫(kù)生成實(shí)體,可以通過(guò)代碼修改數(shù)據(jù)庫(kù)
第五步:選擇第四個(gè)模型

連接數(shù)據(jù)庫(kù):
點(diǎn)擊新建連接:

選擇即可?。?!
模型中包含的對(duì)象:把表選中,視圖看自己有沒(méi)有,需要就添加

點(diǎn)擊完成即可創(chuàng)建?。。?/p>
創(chuàng)建完成即是這樣:你的數(shù)據(jù)庫(kù)的表變成了實(shí)體類,類里面有表的字段

LetDB顯示管理的表,這些不詳細(xì)解釋

二、修改數(shù)據(jù)庫(kù)
一、加數(shù)據(jù)庫(kù)字段
我們?nèi)绻爰右粋€(gè)字段需要怎么樣操作呢?

第一步:找到管理器控制臺(tái)

下面這個(gè)加深的是代碼,是準(zhǔn)備想加的字段 可以先去對(duì)應(yīng)的表cs 里面打好

控制臺(tái)輸入:(啟動(dòng)數(shù)據(jù)庫(kù)遷移)
Enable-Migrations 按下回車
想添加的字段 Sstate

出現(xiàn)以下情況:
第一步:出現(xiàn)了文件夾 和一個(gè)類

第二步:進(jìn)去里面 有個(gè)屬性 改為true

第三步:刪庫(kù)(不跑路哈~) 強(qiáng)烈建議先 拿一個(gè)沒(méi)有用的數(shù)據(jù)庫(kù)試試 出問(wèn)題不負(fù)責(zé)哈??!

第四步:通過(guò)代碼生成數(shù)據(jù)庫(kù)
update-database

成功了,你會(huì)發(fā)現(xiàn)數(shù)據(jù)庫(kù)回來(lái)了,而且多了一個(gè)表,想添加的字段也來(lái)了,那么為什么新多一個(gè)表呢?
這個(gè)表干嘛的:是系統(tǒng)的表結(jié)構(gòu)存放你數(shù)據(jù)庫(kù)的信息,和版本,根據(jù)版本來(lái)判斷是否更新數(shù)據(jù)庫(kù),所以刪庫(kù)的原因是為了生成這么一個(gè)東西。

二、加數(shù)據(jù)庫(kù) 表

第一步:先復(fù)制一個(gè)已經(jīng)擁有的類

然后改個(gè)名字:把class后面 和構(gòu)造方法的名字給改一下

注意這個(gè)也要?jiǎng)h除

添加兩個(gè)字段:

做完上面操作 我們還需要去表模型去綁定一下新添加的表

我的是叫這個(gè)名字,反正就是和你們數(shù)據(jù)庫(kù)名字一樣的那個(gè)cs類
進(jìn)行綁定:

然后控制臺(tái):
update-database

刷新數(shù)據(jù)庫(kù) 即可看見(jiàn)新添加的表

以上就是EF的基本使用方法了,如果有幫到你請(qǐng)點(diǎn)個(gè)贊!有不正確的要在評(píng)論區(qū)指出啊,還有不清楚怎么使用的可以評(píng)論,可以私我,都會(huì)解決的。

到此這篇關(guān)于C#筆記之EF Code First 數(shù)據(jù)模型 數(shù)據(jù)遷移的文章就介紹到這了,更多相關(guān)C# EF中Code First 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
c#利用Excel直接讀取數(shù)據(jù)到DataGridView
這個(gè)例子的功能是c#讀取excel文件,大家可以參考使用2013-11-11
C# winfrom 模擬ftp文件管理實(shí)現(xiàn)代碼
從網(wǎng)上找到的非常好用的模擬ftp管理代碼,整理了一下,希望對(duì)需要的人有幫助2014-01-01
C#實(shí)現(xiàn)圖像選擇驗(yàn)證碼的示例代碼
為了防止網(wǎng)站被非法登陸,網(wǎng)站一般通過(guò)驗(yàn)證碼的方式,防止黑客用軟件非法登陸,本文主要介紹了C#實(shí)現(xiàn)圖像選擇驗(yàn)證碼的示例代碼,具有一定的參考價(jià)值,感興趣的可以了解一下2023-08-08
C#使用channel實(shí)現(xiàn)Plc異步任務(wù)之間的通信
在C#的并發(fā)編程中,Channel是一種非常強(qiáng)大的數(shù)據(jù)結(jié)構(gòu),用于在生產(chǎn)者和消費(fèi)者之間進(jìn)行通信,本文將給大家介紹C#使用channel實(shí)現(xiàn)Plc異步任務(wù)之間的通信,文中有相關(guān)的代碼示例供大家參考,感興趣的朋友跟著小編一起來(lái)看看吧2024-05-05
C# TreeView讀取數(shù)據(jù)庫(kù)簡(jiǎn)單實(shí)例
這篇文章主要介紹了2013-12-12
基于C#編寫(xiě)一個(gè)遠(yuǎn)程桌面應(yīng)用
封閉環(huán)境無(wú)法拷貝外來(lái)的遠(yuǎn)程桌面軟件,所以這篇文章小編就來(lái)帶大家用C#編寫(xiě)一個(gè)簡(jiǎn)單的遠(yuǎn)程桌面應(yīng)用,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-10-10

