前面的文章中,學(xué)習(xí)了EF 中的幾種關(guān)系,一對一,一對多,多對多。但是相信大家肯定會有疑問:
1.我難道每次都要創(chuàng)建數(shù)據(jù)庫么?
2.我怎么樣從已經(jīng)存在的表中,添加字段和移除字段呢?
3.當(dāng)我向表中,添加字段或者移除字段,我怎么來避免丟失數(shù)據(jù)呢?
4.當(dāng)數(shù)據(jù)庫發(fā)生改變的時候,我怎么獲取到創(chuàng)建數(shù)據(jù)庫的腳本呢?
不用著急,這篇文章,我會向大家一一講到:
首先,說說我們?yōu)槭裁匆褂脭?shù)據(jù)庫遷移技術(shù)吧,因為我們的實體總是變動地很頻繁,在上篇文章中,我們使用了數(shù)據(jù)庫初始化策略來做,也就是每次當(dāng)數(shù)據(jù)庫不存在的時候,就創(chuàng)建數(shù)據(jù)庫【類似還有幾種初始化策略】,然而,當(dāng)你的實體改變的時候,在使用這個策略,EF就會報錯。而數(shù)據(jù)庫遷移技術(shù)就可以幫到我們,我們不用每次都創(chuàng)建數(shù)據(jù)庫。并且數(shù)據(jù)庫遷移技術(shù)還可以為我們設(shè)置初始化的數(shù)據(jù)。
先看看項目結(jié)構(gòu)吧:
我們需要建2個類庫項目,還有一個控制臺的程序:
Student類:
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26