共用方式為


Visual Studio 2013 中的 ASP.NET Scaffold

Tom FitzMacken

ASP.NET Scaffolding 是涵蓋在 Visual Studio 2013 中的新功能。

概觀

ASP.NET Scaffolding 是 ASP.NET Web 應用程式的程式碼產生架構。 Visual Studio 2013 包含 MVC 和 Web API 專案的預先安裝程式碼產生器。 當您想要快速新增與資料模型互動的程式碼時,您會將 Scaffolding 新增至您的專案。 使用 Scaffolding 可以減少在專案中開發標準資料作業的時間量。

根據預設,Visual Studio 2013 不支援為 Web Form 專案產生程式碼,但您可以藉由將 MVC 相依性新增至專案或安裝延伸模組,搭配 Web Form 使用 scaffolding。 下方顯示這兩種方式。

Visual Studio 2013 Update 2 (目前 RC) 提供擴充 ASP.NET Scaffolding 以符合您的案例需求的能力。 透過這項功能,您可以建立自訂的 Scaffolding 範本,並將其加入至 [新增 Scaffold] 對話方塊。 在自訂範本中,您可以指定新增 Scaffolded 項目時所產生的程式碼。 如需詳細資訊,請參閱建立 Visual Studio 的自訂 Scaffolder

必要條件

若要使用 ASP.NET Scaffolding,您必須具備:

  • Microsoft Visual Studio 2013
  • Web 開發人員工具 (預設 Visual Studio 2013 安裝的一部分)
  • ASP.NET Web Frameworks and Tools 2013 (預設 Visual Studio 2013 安裝的一部分)
  • 使用 Visual Studio 2022 時,請安裝 Net Framework 專案和專案範本。 如需詳細資訊,請參閱這個 GitHub 問題。

將 Scaffold |項目新增至 MVC 或 Web API

若要新增 Scaffold,請以滑鼠右鍵按一下專案或專案內的某資料夾,然後選取 [新增新增 Scaffolded 項目],如下圖所示。

新增 Scaffold 項目

從 [新增 Scaffold] 視窗中,選取要新增的 Scaffold 類型。

選取 Scaffold 的類型

[新增控制器] 視窗可讓您選取產生控制器的選項,包括您是否要使用 Entity Framework 6 的新異步功能。

新增控制器

針對您的案例建立相關的類別和頁面。 例如,下圖顯示透過 Scaffolding 為名為 Movies 的模型類別所建立的 MVC 控制器和檢視畫面。

建立檔案

將 Scaffold 項目新增至 Web Form

若要新增產生 Web Form 程式碼的 Scaffolding,您必須將延伸模組安裝至 Visual Studio 或新增 MVC 相依性。 這兩種方法如下所示,但您只需要執行其中一種方法。

Web Form Scaffolding 延伸模組

您可以安裝 Visual Studio 延伸模組,讓您能夠搭配 Web Forms 專案使用 Scaffolding。 在 Visual Studio 中,選取 [工具],然後選取 [延伸模組和更新]。 在此對話框中,搜尋 Visual Studio資源庫以取得 Web Form Scaffolding

安裝 web forms scaffolding

如需詳細資訊,請參閱 Web Form Scaffolding

MVC 相依性

若要新增 MVC 相依性,請選取 [新增 Scaffolded 項目] - 。 在 [新增 Scaffold] 視窗中,選取 [MVC 相依性],如下所示。

新增 MVC 相依性

Scaffolding MVC 有兩種選項:最小和完整。 如果選取 [最小],則只有適用於 ASP.NET MVC 的 NuGet 套件和參考會新增至您的專案。 如果選取 [完整] 選項,則會新增 [最小相依性],以及 MVC 專案所需的內容檔案。 若要輕鬆使用 Scaffolding,請選取 [完整相依性]。

選取 [完整相依性]

新增相依性之後,您將看到 readme.txt 檔案。 請小心遵照此檔案中的指示,確保您的專案正常運作。

當完成 readme.txt 檔案中的步驟時,您可以新增 Scaffold 項目,如上一個有關 MVC 和 Web API 的區段所示。 自動產生的檢視內容和控制器,會在您的專案中正常運作。

教學課程

若要建立自訂的 Scaffolder,請參閱建立 Visual Studio 的自訂 Scaffolder

若要自訂產生的檔案,請參閱如何從 [新增 Scaffolded 項目] 對話方塊自訂產生的檔案

如需搭配 Database First 開發使用 Scaffolding 的範例,請參閱 EF Database First 與 ASP.NET MVC

如需在 MVC專案中使用 Scaffolding 的範例,請參閱開始使用 ASP.NET MVC 5

如需在 Web API 專案中使用 Scaffolding 的範例,請參閱在 Web API 2 中使用屬性路由建立 REST API