如何建立.NET Framework Core App及Entity Framework Core資料模型

羅慧真 Anita Lo

  • 恆逸教育訓練中心-資深講師
  • 技術分類:程式設計

 

 

.NET Framework Core是Microsoft 全新的跨平台開發架構,並且是開放源碼。是一個重新為跨平台所設計的開發架構,可以執行在Windows、Mac與Linux平台上。現在您可以直接在Visual Studio 2017上直接開發.NET Framework Core的應用程式,以下是步驟說明如何使用Visual Studio 2017寫一個Console Core的應用程式以及使用Entity Framework Core模型建立資料庫:

啟動Visual Studio 2017開發環境。從「File」-「New」-「Project」,在「New Project」對話盒中,設定上方的清單的.NET Framework版本為「.NET Framework 4.6.1」;選取左方「Installed」清單-「Templates」-「Visual C#」程式語言,從「.NET Core」分類中,選取「Console App [.NET Core]」,取名為CoreConsoleApp。 選單「Tools」 - 「NuGet Package Manager」 - 「Package Manager Console」。在執行以下命令:

Install-Package Microsoft.EntityFrameworkCore.SqlServer -Version 2.0.1

以及執行以下這個命令

Install-Package Microsoft.EntityFrameworkCore.Tools -Version 2.0.1

執行後方案總管展開Dependencies 會看到 Microsoft.EntityFrameworkCore.SqlServer、Microsoft.EntityFrameworkCore.Tools這兩個元件,代表下載成功。 加入一個類別,取名叫PictureContext,加入命名空間如下:

using Microsoft.EntityFrameworkCore;

在這個類別檔裏加入一個類別如下:

 public class Picture {
        public int PictureID { get; set; }
        public string Url { get; set; }
        public string Subject { get; set; }
        public string Author { get; set; }
        }

修改PictureContext類別,繼承DbContext,類別修飾詞改為Public,以及定義類別內容如下:

 public class PictureContext: DbContext
    {
        public DbSet Pictures { get; set; } 
    }

在PictureContext類別加入一個方法,輸入「override 」﹝空格﹞下拉項目選取「OnConfiguring」按下「Tab」鍵自動完成。自動完成的內容如下:

 protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
     {
            
     }

在程式區塊中呼叫optionsBuilder 的UseSqlServer 方法定義資料庫來源,如下:

 protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
     {
        optionsBuilder.UseSqlServer(@"Server=.\sqlexpress;Database=PictureDB;Trusted_Connection=True;");
     }

在「Package Manager Console」的視窗下輸入:

Add-Migration CoreConsoleApp

在「Package Manager Console」的視窗下輸入:

Update-Database

開啟「Service Explorer」,在「Service Explorer」找到「Connection to Database」,按下「Connection to Database」。

「Add Connection」的畫面,在「Data source」的項目上選取Micorsoft SQL Server(SqlClient),在「Server Name」上輸入「.\sqlexpress」,「Select or enter a database name」的項目上下拉選取P「PictureDB」,按下「OK」。

「Server Explorer」視窗,展開「PictureDB」之下的「Tables」會看到Pictures資料表已經成功地被建立。