MVC使用CodeFirst技術實現基礎連結資料庫 Create Model
1.新增名為MyGuestBook專案並選擇MVC核心

2.於Models資料夾新增ADO.NET實體資料模型並使用「空的CodeFirst模型」


3.新增後會在Models資料夾內自動產生「GuestBookModels.cs」檔

4.在「GuestBookModels.cs」檔新增POCO(Plain Old CLR Object)類別

public class GuestBookEntity
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Message { get; set; }
}
5.在「GuestBookModels.cs」檔新增DataContext(Code First中的上下文物件)
在GuestBookModels加入GuestBookeEntity「資料表」
public virtual DbSet<GuestBookEntity> MyEntities { get; set; }

於「GuestBookModels.cs」檔新增Model初始化
Database.SetInitializer(new CreateDatabaseIfNotExists<GuestBookModels>());

6.於Controller的Index動作new GuestBookModel並將該Model裡的GuestBookEntiy類別的結果傳給View

7.於View則要接收從Controller傳來的GuestBookEntiy型別
在檔案開頭要宣告@model IEnumerable<MyGuestBook2.Models.GuestBookEntity>
此時model為集合,可用來顯示Table欄位@Html.DisplayNameFor(model => model.Id)

8.結果如下,可以連結資料庫顯示欄位名稱

---------------------------------------------------------------------------------------------------------------
補充1:Code first與Database first的DbContext的差別

補充2:在一個繼承DbContext的類別中如下
    public class GuestBookModels : DbContext
    {
        // 您的內容已設定為使用應用程式組態檔 (App.config 或 Web.config)
        // 中的 'GuestBookModels' 連接字串。根據預設,這個連接字串的目標是
        // 您的 LocalDb 執行個體上的 'MyGuestBook2.Models.GuestBookModels' 資料庫。
        // 
        // 如果您的目標是其他資料庫和 (或) 提供者,請修改
        // 應用程式組態檔中的 'GuestBookModels' 連接字串。
        public GuestBookModels()
            : base("name=GuestBookModelsConnection")
        {
            Database.SetInitializer(new CreateDatabaseIfNotExists());
        }
        // 針對您要包含在模型中的每種實體類型新增 DbSet。如需有關設定和使用
        // Code First 模型的詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkId=390109。
        public virtual DbSet MyEntities { get; set; }
    }  
有一條字串為base("name=GuestBookModelsConnection"),該用途為指定ConnectionName將會對應到
MVC專案第一層的web.config裡的ConnectionName部分內容如下