- ASP.NET Core 教程
- ASP.NET Core - 首頁
- ASP.NET Core - 概述
- ASP.NET Core - 環境設定
- ASP.NET Core - 新建專案
- ASP.NET Core - 專案佈局
- ASP.NET Core - Project.Json
- ASP.NET Core - 配置
- ASP.NET Core - 中介軟體
- ASP.NET Core - 異常處理
- ASP.NET Core - 靜態檔案
- ASP.NET Core - 設定 MVC
- ASP.NET Core - MVC 設計模式
- ASP.NET Core - 路由
- ASP.NET Core - 屬性路由
- ASP.NET Core - 操作結果
- ASP.NET Core - 檢視
- 設定 Entity Framework
- ASP.NET Core - DBContext
- ASP.NET Core - Razor 佈局檢視
- ASP.NET Core - Razor 檢視啟動
- ASP.NET Core - Razor 檢視匯入
- ASP.NET Core - Razor 標籤助手
- ASP.NET Core - Razor 編輯表單
- ASP.NET Core - 身份概述
- ASP.NET Core - 授權屬性
- 身份配置
- ASP.NET Core - 身份遷移
- ASP.NET Core - 使用者註冊
- ASP.NET Core - 建立使用者
- ASP.NET Core - 登入和登出
- ASP.NET Core 有用資源
- ASP.NET Core - 快速指南
- ASP.NET Core - 有用資源
- ASP.NET Core - 討論
ASP.NET Core - 設定 Entity Framework
在本章中,我們將設定並配置我們的應用程式,以便從 SQL Server 資料庫儲存和讀取資料。
為了使用資料庫,我們將使用 Entity Framework,它經過重新編寫以與新的 .NET Framework 協同工作。如果您以前使用過 EF,您會看到許多熟悉的部分。
在此應用程式中,我們將使用 SQL Server LocalDB。如果您不熟悉 SQL Server,您可以使用任何您喜歡的資料庫,例如本地資料庫、遠端資料庫,只要您有權在例項上建立新資料庫即可。
LocalDB 是 SQL Server 的一個特殊版本,專為開發人員最佳化。
Visual Studio 2015 甚至其社群版預設都會安裝 LocalDB。
要檢查 LocalDB,請轉到 Visual Studio 中的檢視 → SQL Server 物件資源管理器選單選項。
如果您必須使用 SQL Server,這是一個很棒的工具,因為它允許您瀏覽資料庫和瀏覽資料,甚至在資料庫中建立資料。第一次開啟它時,可能需要一點時間,但它應該會自動連線到 LocalDB。
安裝 Entity Framework
使用 Entity Framework 的第一步是從 NuGet 包管理器安裝 Entity Framework NuGet 包,或透過直接編輯project.json檔案。
現在讓我們透過新增以下兩個包來直接編輯 project.json 檔案。
EntityFramework.Commands包幫助我們執行 Entity Framework 的任務,例如根據我們的 C# 實體類建立資料庫模式,這些任務可從命令列工具中獲得,其中邏輯位於 EntityFramework.Commands 包中。
為了使用此命令列工具,我們需要在 project.json 的 commands 部分新增一個額外的條目,如下面的螢幕截圖所示。
我們剛剛將其命名為“ef”,它將對映到此 EntityFramework.Commands 包。我們可以使用此“ef”來訪問 EntityFramework.Commands 中提供的一些邏輯。
以下是 project.json 檔案的實現。
{
"version": "1.0.0-*",
"compilationOptions": {
"emitEntryPoint": true
},
"dependencies": {
"Microsoft.AspNet.Mvc": "6.0.0-rc1-final",
"Microsoft.AspNet.Diagnostics": "1.0.0-rc1-final",
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final",
"Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final",
"EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final",
"EntityFramework.Commands": "7.0.0-rc1-final"
}
"commands": {
"web": "Microsoft.AspNet.Server.Kestrel"
},
"frameworks": {
"dnx451": { },
"dnxcore50": { }
},
"exclude": [
"wwwroot",
"node_modules"
],
"publishExclude": [
"**.user",
"**.vspscc"
]
}