Entity Framework筆記(二)_Database First使用方式
EntityFramework 主要提供的Workflows有如下幾種
1. Database First
2. Model First
3. Code First
所謂DB First也就是EF跟既有的資料庫連接後對應資料表去生成相應Model Class
而這些Model類別會再去衍生出相應Entities跟Context的類別
在Model這一層事實上是Read-Only的任何異動都必須從DB來去下手
這裡準備好一個.net framework 的 ConsoleApp專案
並且準備好你的DB和相應Table
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | USE [Master]; GO CREATE DATABASE DatabaseFirstTestDB ON ( NAME = DBFirstData, /* Point to the directory wherer you want to store your db files */ FILENAME = 'E:\IT_Db\DBFirstTest.mdf', SIZE = 10MB, MAXSIZE = 50MB, FILEGROWTH = 5MB ) LOG ON ( NAME = DBFirstLog, /* Point to the directory wherer you want to store your db files */ FILENAME = 'E:\IT_Db\DBFirstLog.ldf', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB); GO USE [DatabaseFirstTestDB]; GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Contact]( [Id] [int] NOT NULL PRIMARY KEY, [Name] [nchar](30) NULL, [Nickname] [nchar](30) NULL, [Age] [numeric](18, 0) NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[ContactAddress]( [Id] [int] NOT NULL PRIMARY KEY, [ContactId] [int] FOREIGN KEY References Contact(Id), [AddressLine1] [nchar](20) NULL, [AddressLine2] [nchar](20) NULL, [City] [nchar](20) NULL, [StateProvince] [nchar](10) NULL, [PostalCode] [nchar](10) NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[ContactEmail]( [Id] [int] NOT NULL PRIMARY KEY, [ContactId] [int] FOREIGN KEY References Contact(Id), [Email] [nvarchar](100) NULL ) ON [PRIMARY] GO |
針對專案右鍵新增項目
選ADO.NET實體資料模型(Entity Data Model)
在此選擇「來自資料庫的EF Designer」
點選「新增連接」
選擇資料來源為Microsoft SQL Server
按繼續
預設會生出edmx的檔案
在Visual Studio中
可以透過快捷按鍵來去開起顯示兩個Entity設計工具(EF Designer)相應的設計輔助檢視視窗資訊
留言
張貼留言