第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

代碼-優(yōu)先與模型/數(shù)據(jù)庫-第一

代碼-優(yōu)先與模型/數(shù)據(jù)庫-第一

代碼-優(yōu)先與模型/數(shù)據(jù)庫-第一使用實體框架4.1代碼-先通過模型/數(shù)據(jù)庫-先使用EDMX圖的利弊是什么?我試圖完全理解使用EF4.1構建數(shù)據(jù)訪問層的所有方法。我在使用儲存庫模式IoC.我知道我可以使用代碼優(yōu)先的方法:手動定義我的實體和上下文,然后使用ModelBuilder微調架構。我還可以創(chuàng)建一個EDMX圖,并選擇使用T4模板生成相同代碼的代碼生成步驟。POCO上課。在這兩種情況下,我最終POCO對象是ORM產(chǎn)生的不可知論者和上下文DbContext.數(shù)據(jù)庫首先似乎是最有吸引力的,因為我可以在企業(yè)管理器中設計數(shù)據(jù)庫,快速同步模型并使用設計器對其進行微調。那這兩種方法有什么區(qū)別呢?這僅僅是VS 2010對企業(yè)經(jīng)理的偏好嗎?
查看完整描述

3 回答

?
海綿寶寶撒

TA貢獻1809條經(jīng)驗 獲得超8個贊

我認為不同之處在于:

代碼優(yōu)先

  • 非常受歡迎,因為硬核程序員不喜歡任何類型的設計人員,在EDMXXML中定義映射太復雜了。
  • 完全控制代碼(沒有自動生成的代碼,很難修改)。
  • 一般的期望是,您不必費心使用DB。DB只是一個沒有邏輯的存儲。EF將處理創(chuàng)建,您不想知道它是如何完成工作的。
  • 對數(shù)據(jù)庫的手動更改很可能會丟失,因為您的代碼定義了數(shù)據(jù)庫。

數(shù)據(jù)庫優(yōu)先

  • 如果您有由DBA設計的DB,或者是單獨開發(fā)的,或者您有現(xiàn)有的DB,則非常受歡迎。
  • 您將讓EF為您創(chuàng)建實體,在修改映射之后,您將生成Poco實體。
  • 如果您想要Poco實體中的其他特性,則必須使用T4、修改模板或使用部分類。
  • 手動更改數(shù)據(jù)庫是可能的,因為數(shù)據(jù)庫定義了域模型。您可以隨時從數(shù)據(jù)庫中更新模型(此功能運行得很好)。
  • 我經(jīng)常使用這與數(shù)據(jù)庫項目(只有高級和最終版本)。

模型優(yōu)先

  • 如果你是設計師迷,IMHO很受歡迎(你不喜歡寫代碼或SQL)。
  • 您將“繪制”您的模型,讓工作流生成您的數(shù)據(jù)庫腳本,讓T4模板生成您的Poco實體。您將失去對實體和數(shù)據(jù)庫的部分控制,但對于小型輕松項目,您將非常有效率。
  • 如果您想要Poco實體中的其他特性,則必須使用T4、修改模板或使用部分類。
  • 對數(shù)據(jù)庫的手動更改很可能會丟失,因為您的模型定義了數(shù)據(jù)庫。如果您安裝了數(shù)據(jù)庫生成電源包,這將更好地工作。它將允許您更新數(shù)據(jù)庫架構(而不是重新創(chuàng)建)或更新VS中的數(shù)據(jù)庫項目。

我希望在EF 4.1的情況下,還有其他一些與代碼優(yōu)先和模型/數(shù)據(jù)庫優(yōu)先相關的特性。CodeFirst中使用的FLUENT API并不能提供EDMX的所有功能。我期望存儲過程映射、查詢視圖、定義視圖等特性在首先使用模型/數(shù)據(jù)庫時起作用DbContext(我還沒有試過)但他們沒有在代碼中首先。


查看完整回答
反對 回復 2019-06-14
  • 3 回答
  • 0 關注
  • 743 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號