ASP.NET 資料存取 - 建議資源
本主題提供如何主要透過使用 Entity Framework 和 SQL Server 存取 ASP.NET Web 應用程式中的資料的文件資源的連結。
如果您知道一篇很棒的部落格文章、Stack Overflow 主題或任何其他有用的連結,請[傳送電子郵件給我們](aspnetue@microsoft.commailto:aspnetue@microsoft.com?subject=Data Access Content Map),並附上該連結。
最後更新時間:2014 年 4 月 3 日
此主題包括下列各節:
ASP.NET 中的資料存取使用者入門
- 資料儲存選項 (使用 Windows Azure 建立現實中的雲端應用程式)。 關於雲端開發的電子書章節。 引入 NoSQL 資料庫作為許多熟悉關聯式資料庫的開發人員往往忽略的替代方案。 提供選擇關係型或 NoSQL 或選擇特定平台時應考慮的指南。
- ASP.NET 資料存取選項 (MSDN)。 介紹 ASP.NET 關聯式資料庫的資料存取選項,並指導如何選擇適合您的情境的平台和存取方法。
- 關聯式資料庫。 維基百科)。 如果您尚未使用過關聯式資料庫,請參閱此頁面以了解關聯式資料庫術語和概念的介紹。 有關 SQL Server 的介紹,請參閱本主題後面的使用 SQL Server 資料庫。
使用 Entity Framework
- Entity Framework 開發方法 (MSDN)。 有關如何選擇 Entity Framework 開發方法「資料庫優先」、「模型優先」或「 Code First 」的指南。
使用 Entity Framework Code First
以下教學課程提供可下載的範例應用程式:
- 透過 MVC 5 開始使用 EF 6。 涵蓋廣泛的 Entity Framework Code First 情境,包括移轉和 EF 6 功能,例如連接彈性、命令攔截和非同步。 這是 EF 5 / MVC 4 系列的更新版本。 早期系列包括有關儲存庫和工作單元模式的教學課程,新系列中未包含這些教學課程。
- ASP.NET MVC 5 簡介。 涵蓋較小範圍的 Entity Framework Code First 情境,但在介紹 MVC 功能方面做了更全面的工作。
- 模型繫結和 Web Forms。 在 Web Forms 應用程式中使用 Code First。
- ASP.NET 4.5 Web Forms 使用者入門。 Web Forms 簡介,其中涉及 Code First 的一些內容。 使用模型繫結。
- MVC 3 Music 市集。 在也實現會員資格和授權的電子商務 MVC 3 應用程式中使用 Code First。 這裡使用的 MVC 版本和 ASP.NET 會員 (驗證和授權) 系統已經過時;有關 ASP.NET 成員資格的更多最新資訊,請參閱 https://asp.net/identity。
其他資源:
- Entity Framework - 現有資料庫的 Code First。 MSDN。 展示如何將 Code First 與現有資料庫結合使用的影片和演練。
- 資料開發中心 - Entity Framework。 MSDN。 有關 Entity Framework 團隊建立和維護的 Entity Framework 文件的指南,請參閱使用者入門連結。
另請參閱本主題後面有關 Entity Framework 和其他 Entity Framework 資源的書籍。
使用 Entity Framework Code First 移轉
上面列出的大多數 Code First 教學課程都涵蓋了移轉。 另請參閱以下資源。
- 使用 Visual Studio 進行 ASP.NET Web 部署。 由 2 部分組成的教學課程系列,展示如何使用 Code First 移轉來部署資料庫。
- 將具有成員資格、OAuth 和 SQL 資料庫的安全 ASP.NET MVC 5 應用程式部署到 Windows Azure 網站。 Microsoft Azure)。 如何使用移轉將成員資格和應用程式資料部署到 Azure。
- Visual Studio 和 ASP.NET 的 Web 部署概述。 請參閱在 Visual Studio 中設定資料庫部署部分,以了解如何將 Code First 移轉整合到 Visual Studio Web 部署功能中。
- 資料開發人員中心 - Code First 移轉 (MSDN)。 Entity Framework 團隊的移轉文件。
- 移轉截圖系列。 EF 部落格)。 關於 Code First 移轉中的高級主題的三個影片。
- 使用 ASP.NET 網頁網站進行 Code First 移轉。 Mikesdotnetting 部落格)。 示範如何透過將資料上下文放入 Visual Studio 類別庫專案中,對 ASP.NET 網頁網站使用 Code First 移轉。
使用 Entity Framework Database First 或 Model First (EF 設計工具)
- 首先透過 MVC 5 開始使用 Entity Framework 6 資料庫。 在伺服器總管中執行指令碼來建立資料庫,然後使用 Entity Framework 設計工具建立資料模型。 示範如何建立簡單的 CRUD 網頁,對於其他資料處理功能,您可以遵循 Code First 教學之一,因為所有 EF 工作流程都使用相同的 DbContext API。
以下資源較舊。 如果您想要使用 Entity Framework 4.0 版,並且想要在 Web Forms 應用程式中使用資料來源控制項進行資料繫結,那麼它們非常有用。
- Entity Framework 4.0 使用者入門。 示範如何使用 EntityDataSource 控制項。
- 繼續 Entity Framework (展示如何使用 ObjectDataSource 控制項。 包括有關併發處理的教學課程、有關 EF 效能的教學課程以及有關 EF 4.0 新增功能的教學課程。
處理 Entity Framework 中的相關資料 (延遲載入、預先載入和明確載入)
- 在 ASP.NET MVC 應用程式中使用 Entity Framework 讀取相關資料。 Code First,MVC 範例應用程式。 顯示的方法也適用於 Web Forms 模型繫結和資料庫優先工作流程。
- 資料開發人員中心 - 載入相關實體 (MSDN)。 Entity Framework 團隊有關載入相關資料的文件。
最佳化 Entity Framework 效能
- ASP.NET 應用程式的進階 Entity Framework 情境。 示範如何執行您自己的 SQL 陳述式或呼叫您自己的預存程序、如何停用變更偵測以及如何在儲存變更時停用驗證。
- Entity Framework 5 的效能注意事項 (MSDN)。
- 效能注意事項 (Entity Framework) (MSDN)。
- 在 ASP.NET Web 應用程式中使用 Entity Framework 來最大限度地提高效能。 適用於 Entity Framework 4.0。
- 另請參閱本主題後面的最佳化 ASP.NET 資料存取。
處理 Entity Framework 應用程式中的併發性
- 在 ASP.NET MVC 應用程式中處理與 Entity Framework 的併發性。 Code First,DbContext API,使用 MVC 範例應用程式。
- 資料開發人員中心 – 樂觀併發模式 (MSDN)。 Entity Framework 團隊的併發文件。
- 在 ASP.NET Web 應用程式中處理與 Entity Framework 的併發性。 適用於 Entity Framework 4.0。 Database First,ObjectContext API,使用 Web Forms 範例應用程式。
Entity Framework 相關書籍
- 程式設計 Entity Framework :DbContext,作者:Julie Lerman 和 Rowan Miller。
- 程式設計 Entity Framework:Code First,作者:Julie Lerman 和 Rowan Miller。
這兩本書都是最新的目前推薦的技術。 它們提供了比網際網路上提供的任何內容更全面且易於理解的 Entity Framework 介紹。 另一本書,Julie Lerman 的「程式設計 Entity Framework」,雖然它內容更為詳盡且全面,但因為較舊,書中許多技術已不再是使用 Entity Framework 的推薦方式。 另請參閱 MSDN 網站上的資料開發人員中心 - 書籍中,Entity Framework 團隊建議的書籍清單。
其他 Entity Framework 資源
- Entity Framework (ADO.NET) 團隊部落格。 獲取最新資訊和新增強功能公告的最佳資源之一。 有關其他 EF 相關的部落格,請參閱 Entity Framework 使用者入門中的部落格連結。
- MSDN Magazine。 請參閱「資料點」列,該列通常涉及與 Entity Framework 相關的主題。
ASP.NET Web Forms 應用程式中的資料繫結
- ASP.NET Web Forms 資料存取選項 (MSDN)。
使用 Web Forms 模型繫結
- 模型繫結和 Web Forms。 使用 EF Code First 的教學課程系列。
- Web Forms 模型繫結第 1 部分:選擇資料 (Scott Guthrie 的部落格)。 在這些較舊的部落格文章中,目前名為 ItemType 的屬性被命名為 ModelType,但除此之外它們包含的資訊是有效的。
- Web Forms 模型繫結第 2 部分:篩選資料 (Scott Guthrie 的部落格)。
- Web Forms 模型繫結第 3 部分:更新與驗證 (Scott Guthrie 的部落格)。
- ASP.NET 4.5 Web Forms 模型繫結。 (影片)。
- 模型繫結第 1 部分 - 選擇資料 (影片)。
- 模型繫結第 2 部分 - 篩選 (影片)。
- ASP.NET 4.5 Web Forms 使用者入門 - 顯示資料項目和詳細資訊。
使用 Web Forms 資料來源控制項
- 資料來源 Web 伺服器控制項 (MSDN)。
- 宣布發佈 Entity Framework 6 的動態資料提供者和 EntityDataSource 控制項 (Microsoft Web 開發部落格)。
使用 Web Forms 資料繫結控制項和資料繫結運算式
- 模型繫結和 Web Forms。 使用 EF Code First 的教學課程系列。
- ASP.NET 4.5 Web Forms 使用者入門 - 顯示資料項目和詳細資訊。
- 強型別資料控制項 (Scott Guthrie 的部落格)。
- 強型別資料控制項 (影片)。
- ASP.NET 4.5 Web Forms 強型別資料控制項 (影片)。
- 資料繫結 Web 伺服器控制項 (MSDN)。
- 資料繫結運算式概述 (MSDN)。 本頁僅涵蓋 Eval 和 Bind;它尚未更新以包含 Item 和 BindItem。
使用 SQL Server 資料庫
- SQL Server 資料庫功能 (MSDN)。 有關各種 SQL Server 主題的一般介紹,請參閱目錄中此主題下的項目。
- SQL Server 版本 (MSDN)。 可用 SQL Server 版本的摘要,以及有關每個版本的更多資訊的連結。
- ASP.NET Web 應用程式的 SQL Server 連線字串 (MSDN)。
- 將 SQL Server Compact 用於 ASP.NET Web 應用程式 (MSDN)。
- Microsoft SQL Server:資料庫產品範例。 AdventureWorks 資料庫範例。
- 安裝範例資料庫。 除了此處顯示的方法之外,您還可以將範例 .mdf 檔案之一下載到 Web 專案的 App_Data 資料夾中,將資料庫轉換為 LocalDB,然後建立 LocalDB 連接字串。 有關如何執行此操作的資訊,請參閱作法:升級到 LocalDB。
另請參閱以下有關使用 SQL Server Express 和 LocalDB 以及在 SQL Server 和 SQL Database 之間進行選擇的部分。
使用 SQL Server Express LocalDB 資料庫
- SQL Server Express 2012 LocalDB (MSDN)。 MSDN 官方對 LocalDB 的介紹。
- ASP.NET Web 應用程式的 SQL Server 連線字串 (MSDN)。
- 作法:升級到 LocalDB (MSDN)。 如何將 .mdf 檔案從早期版本的 SQL Server Express 移轉到 LocalDB。 如果您下載其中一個 SQL Server 2012 範例資料庫,則也必須完成此程序。
- 隆重推出 LocalDB,這是改善版 SQL Express (SQL Server Express 部落格)。 關於為什麼建立 LocalDB 的背景知識比 MSDN 中包含的內容更多。
- LocalDB:我的資料庫在哪裡? (SQL Server Express 部落格)。 有關建立 LocalDB 資料庫檔案的位置的資訊。
- 將 LocalDB 與完整 IIS 結合使用,第 1 部分:使用者設定檔 (SQL Server Express 部落格)。 LocalDB 不適用於 IIS。 本系列部落格文章解釋了這些問題和一些解決方法。
使用 SQL Server Express 資料庫
- ASP.NET Web 應用程式的 SQL Server 連線字串 (MSDN)。 如果將 AttachDBFileName 連線字串設定與 SQL Server Express 一起使用,請特別參閱本頁的使用者執行個體部分。
- 如何取得本機 SQL Server Express 2008 的所有權 (SQL Server Express 部落格)。 一個常見問題是無法使用 SQL Server Express 資料庫,因為您不是 SQL Server Express 執行個體的管理員。 預設情況下,只有安裝 SQL Server Express 的人員才是管理員。 本部落格介紹如果您是電腦管理員,如何讓自己成為 SQL Server Express 管理員。
- 我的 ASP.NET Web 應用程式可以在生產中使用 SQL Server Express 資料庫嗎? (MSDN)。
使用 Windows Azure SQL 資料庫
- 將具有成員資格、OAuth 和 SQL 資料庫的安全 ASP.NET MVC 應用程式部署到 Windows Azure 網站 (Microsoft Azure 網站)。
- SQL 資料庫 (Microsoft Azure 網站)。 使用者入門教學課程和操作指南。
- Windows Azure SQL 資料庫 (MSDN)。 MSDN 中 SQL 資料庫目錄的頂層節點。
- Windows Azure SQL 資料庫文章索引 (Microsoft Learn 網站)。
- 瞬態故障處理應用程式區塊。 一個架構,使您能夠處理因限製而導致的瞬時網路故障和連接錯誤。 NuGet 套件中提供:Enterprise Library 5.0 - 瞬態故障處理應用程式區塊。
- SQL 資料庫和 Entity Framework 使用者入門 (MSDN)。
- Windows Azure SQL 資料庫社群論壇。
- 移轉到 Windows Azure SQL 資料庫 (MSDN)。 Microsoft 模式和實踐團隊提供的全面端到端情境的一章。 介紹您可能想要移轉的原因以及如何從 SQL Server 移轉到 SQL 資料庫。
- 將 SQL Server 資料庫移轉到 Windows Azure SQL 資料庫 (MSDN)。
在 SQL Server 和 Windows Azure SQL 資料庫之間進行選擇
- SQL Server 與 Azure SQL 資料庫之間的 T-SQL 差異 (Microsoft Learn 網站)。
- 資料移轉到 Windows Azure SQL 資料庫:工具和技術 (MSDN)。 包括比較 SQL Server 和 SQL 資料庫的部分,並提供有關何時從 SQL Server 移轉到 SQL 資料庫的指導。
- 連接 Azure SQL CICD 的點 (Microsoft 部落格網站)。
- SQL Server 功能限制 (Windows Azure SQL 資料庫)(MSDN)。
- Windows Azure 表格式儲存體和 Windows Azure SQL 資料庫 - 比較和對比 (MSDN)。 對於部署到 Windows Azure 的應用程式,Windows Azure 表格式儲存體可能是 Windows Azure SQL 資料庫的替代方案。 本主題可協助您在這些替代方案之間做出決定。
- Windows Azure SQL 資料庫 (MSDN)。
- 準則與限制 (Windows Azure SQL 資料庫)
使用 NoSQL 資料庫管理系統
- Windows Azure 資料服務 (Microsoft Azure 網站)。 請參閱資料表服務功能指南和頁面的巨量資料區段。
- 使用儲存表、佇列和 Blob 的 ASP.NET 多層應用程式 (Microsoft Azure 網站)。 包含使用 Windows Azure 儲存體 NoSQL 表的可下載範例應用程式的端對端教學課程。
在 ASP.NET 應用程式中使用 LINQ 查詢
- ASP.NET 資料存取選項 (MSDN)。 包括 LINQ 簡介。
- LINQ 訓練影片。
- 帶有動態 LINQ 資源連結的 ASP.NET 論壇討論串。
使用動態資料 Scaffolding
- 動態資料項目範本 (MSDN)。 有關何時使用動態資料項目的指南。
- ASP.NET 動態資料 (MSDN)。
確保資料存取安全
- 保護 ASP.NET 中的資料存取 (MSDN)。
- 安全注意事項 (Entity Framework) (MSDN)。
- 作法:使用資料來源控制項時保護連接字串 (MSDN)。
最佳化資料存取效能
- ASP.NET 效能概述 (MSDN)。
- ASP.NET 快取 (MSDN)。
- 提高 ASP.NET 效能 (MSDN)。 此頁面頂部有「停用內容」警告,但大多數資訊仍然相關,並且沒有類似的更新資源。
- 提高 SQL Server 效能 (MSDN)。 與上一個連結的評論相同。
另請參閱本主題前面的最佳化 Entity Framework 效能。
部署資料庫
- ASP.NET Web 部署 - 建議資源 (MSDN)。
透過 Web 服務存取資料
- 透過 Web 服務存取資料 (MSDN)。 有關何時使用 Web API 與 WCF 的指南。
- ASP.NET Web API 使用者入門。
- WCF 資料服務 (MSDN)。
其他資源
- ASP.NET 資料存取常見問題解答 (MSDN)。
- ASP.NET Web Forms 教學課程 - 資料。 這些教學課程大多數都比較舊;確保您先閱讀 ASP.NET 資料存取選項和資料儲存選項 (使用 Windows Azure 建立真實世界的雲端應用程式),這樣您就不會陷入不適合您的情境的資料存取方法。
- ASP.NET MVC 內容對應。
- ASP.NET 網頁教學課程 - 資料。
- 在 Visual Studio 中存取資料 (MSDN)。 提供與此內容對應類似的連結清單,但重點關注 Visual Studio 而不是 ASP.NET。