實體框架入門

Download entity-framework eBook

備註

實體框架(EF)是一種對象關係映射器(ORM),它使.NET開發人員能夠使用特定於域的對象處理關係數據。它消除了開發人員通常需要編寫的大多數數據訪問代碼的需要。

實體框架允許您通過在EF Designer中編寫代碼或使用框和行來創建模型。這兩種方法都可用於定位現有數據庫或創建新數據庫。

實體框架是Microsoft為.NET Framework和Microsoft推薦的數據訪問技術提供的主要ORM。

版本

發布日期
1.0 2008-08-11
4 2010-04-12
4.1 2011-04-12
4.1更新1 2011-07-25
4.3.1 2012-02-29
5 2012年8月11日
6 二〇一三年十月十七日
6.1 2014年3月17日
核心1.0 2016年6月27日

發行說明: https//msdn.microsoft.com/en-ca/data/jj574253.aspx

安裝實體框架NuGet包

在Visual Studio中打開Solution Explorer窗口,然後右鍵單擊項目,然後從菜單中選擇Manage NuGet Packages

管理nuget包

在打開的窗口中,在右上角的搜索框中鍵入EntityFramework

在此處輸入圖像描述

或者,如果您使用的是Visual Studio 2015,您將看到如下內容:

在此處輸入圖像描述

然後單擊Install。

我們還可以使用包管理器控制台安裝實體框架。要首先使用工具菜單 - > NuGet包管理器 - >包管理器控制台打開它,然後輸入:

Install-Package EntityFramework
 

在此處輸入圖像描述

這將安裝Entity Framework並自動在項目中添加對程序集的引用。

使用C#中的實體框架(代碼優先)

代碼優先允許您在不使用GUI設計器或.edmx文件的情況下創建實體(類)。它首先命名為Code ,因為您可以首先創建模型, Entity框架將根據映射自動創建數據庫。或者您也可以將此方法與現有數據庫一起使用,現有數據庫首先使用現有數據庫調用代碼 。例如,如果您希望表格包含行星列表:

public class Planet
{
    public string Name { get; set; }
    public decimal AverageDistanceFromSun { get; set; }
}
 

現在創建您的上下文,它是您的實體類和數據庫之間的橋樑。給它一個或多個DbSet<> 屬性:

public class Planet
{
    public string Name { get; set; }
    public decimal AverageDistanceFromSun { get; set; }
}
 

我們可以通過執行以下操作來使用它:

public class Planet
{
    public string Name { get; set; }
    public decimal AverageDistanceFromSun { get; set; }
}
 

在這個例子中,我們使用Name 屬性創建一個新的Planet ,其值為"Jupiter" ,而AverageDistanceFromSun 屬性的值為778.5

然後,我們可以使用DbSetAdd() 方法將此Planet 添加到上下文中,並使用SaveChanges() 方法將更改提交到數據庫。

或者我們可以從數據庫中檢索行:

public class Planet
{
    public string Name { get; set; }
    public decimal AverageDistanceFromSun { get; set; }
}
 

什麼是實體框架?

編寫和管理ADO.Net代碼以進行數據訪問是一項繁瑣而單調的工作。 Microsoft提供了一個名為“實體框架”O / RM框架,以自動化應用程序的數據庫相關活動。

實體框架是對象/關係映射(O / RM)框架。它是對ADO.NET的增強,它為開發人員提供了一種訪問和存儲數據庫中數據的自動機制。

什麼是O / RM?

ORM是一種工具,用於以自動方式將域對像中的數據存儲到關係數據庫(如MS SQL Server),而無需太多編程。 O / RM包括三個主要部分:

  1. 域類對象
  2. 關係數據庫對象
  3. 映射有關域對像如何映射到關係數據庫對象的信息( 例如表,視圖和存儲過程)

ORM允許我們將數據庫設計與域類設計分開。這使得應用程序可維護和可擴展。它還可以自動執行標準CRUD操作(創建,讀取,更新和刪除),以便開發人員無需手動編寫。

Stats

304 Contributors: 12
Thursday, September 15, 2016
許可下: CC-BY-SA

不隸屬於 Stack Overflow
Rip Tutorial: info@zzzprojects.com

下載電子書