前言:去年剛工作的時候,也是剛剛正式接觸.net,當時瞭解了EF以及三種開發模式,Database First、Model First 、Code First。公司用的開發模式是Database First,由於公司有一套成熟的框架,我只需要按部就班的開發即可,因此就沒有詳細學習過這些開發模式,總覺 ...
前言:去年剛工作的時候,也是剛剛正式接觸.net,當時瞭解了EF以及三種開發模式,Database First、Model First 、Code First。公司用的開發模式是Database First,由於公司有一套成熟的框架,我只需要按部就班的開發即可,因此就沒有詳細學習過這些開發模式,總覺得缺點什麼。正好這段時間沒有什麼任務,並且在博客園瀏覽學習了很多大神的對技術、生活、職業、人生的一些總結,學習很多,這幾天對這三種開發模式有了進一步的理解。我覺得我也該學著給大家分享一些知識了,就先趁熱打鐵,把我對 ModelFirst的實現過程加以總結、分享下來,若有不當之處,還望各路大神多多指教
使用工具: win7操作系統,vs2012, sqlserver2008
開始:
1.新建項目:
2.在新建好的項目中新建ADO.NET實體數據模型,如下圖
點擊新建項後,彈出如下視窗:選中ADO.NET實體數據模型,填好新建項的名稱,
點擊添加後,開始選擇模型內容,我們選擇空模型,點擊完成按鈕
新建完成後,在vs2012頁面上會彈出edmx關係圖,如下
3.新增實體
在edmx關係圖的空白處單擊滑鼠右鍵,添加實體
在彈出的視窗中添加實體內容,下圖是創建了一個student實體,主鍵為ID
為實體添加屬性:在student的屬性上右鍵新增標量屬性
在添加屬性後,右鍵選擇屬性,可以在右方的標記處對屬性進行修改
4 與資料庫關聯,生成相關數據表
在空白處單擊右鍵,選擇‘根據模型生成資料庫’,彈出資料庫連接視窗,點擊新建連接
在彈出的視窗點擊更改
選擇Microsoft SQL Server,點擊確定
在彈出的視窗中,填入你的資料庫相關信息
連接成功後,單擊下一步,
在彈出的視窗上點擊完成,成功與sql server關聯
完成上述操作後,Ctrl+Shift+S保存更新全部生成的頁面
執行生成的sql腳本,找到系統生成的sql腳本,右鍵執行,即可在關聯資料庫中創建表
生成的數據表:
5 往數據表中添加數據
在Program類中添加代碼
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ModelFirst { class Program { static void Main(string[] args) { #region 添加數據 //1.聲明上下文 ModelFirstContainer dbContext = new ModelFirstContainer(); //2.對資料庫的操作 student st = new student();//實例化實體 //為實體賦值 st.ID = 1; st.NAME = "張三"; st.AGE = "18"; //增加實體到上下文 dbContext.studentSet.Attach(st); dbContext.Entry(st).State = System.Data.EntityState.Added; //保存 dbContext.SaveChanges(); #endregion } } }
運行程式後,在數據表中成功添加新的數據,如下圖: