注意
已不再建議使用 WebMatrix 做為 ASP.NET 網頁的整合式開發環境。 請使用 Visual Studio 或 Visual Studio Code。
本文列出 ASP.NET Web Pages (Razor) 和 WebMatrix 的一些常見問題。
教學課程中使用的軟體版本
- ASP.NET Web Pages (Razor) 3
- Visual Studio 2013
- WebMatrix 3
有關錯誤的疑問和其他問題,請參閱 ASP.NET Web Pages (Razor) 疑難排解指南。
ASP.NET Web Pages、ASP.NET Web Forms 和 ASP.NET MVC 之間有何差異?
這三項都是用來建立動態 Web 應用程式的 ASP.NET 技術:
- ASP.NET Web Pages 著重於在 HTML 頁面新增動態 (伺服器端) 程式碼和資料庫存取權,並且提供簡單且輕量型的語法。
- ASP.NET Web Forms 是以頁面物件模型和傳統視窗類型的控制項 (按鈕、清單等) 為基礎。 Web Forms 使用的是進行用戶端型 (Windows Forms) 開發工作的人所熟悉的事件型模型。
- ASP.NET MVC 會實作 ASP.NET 的模型-檢視-控制器模式。 強調「關注點分離」(處理、資料和 UI 層)。
這三個架構都受到完全支援,並持續由 ASP.NET 小組進行開發。 一般而言,選擇使用何種架構取決於您的背景和 ASP.NET 經驗。
ASP.NET Web Pages 特別設計成讓已熟知 HTML 的人員輕鬆地將伺服器處理新增至其頁面。 對於學生、業餘愛好者、一般不熟悉程式設計的人來說,這是一個很好的選擇。 對於擁有非 ASP.NET Web 技術經驗的開發人員來說,這也是一個不錯的選擇。
我需要 WebMatrix 才能使用 Web Pages 嗎?
否。 已不再建議使用 WebMatrix 做為 ASP.NET 網頁的整合式開發環境。 請使用 Visual Studio 或 Visual Studio Code。
如果您不想使用 Visual Studio 或 Visual Studio Code,可以使用 Microsoft Web Platform Installer 個別安裝元件產品。 您需要下列產品:
- Microsoft .NET Framework 4.5
- ASP.NET MVC 5 (也會安裝 ASP.NET Web Pages 架構)
- IIS Express (Web 伺服器)
- Microsoft SQL Server Compact 4.0 (資料庫)
您可以使用文字編輯器來編輯 .cshtml (或 .vbhtml) 頁面。
不使用工具來管理 SQL Server Compact 資料庫 (.sdf 檔案) 有點困難。 Visual Studio 包含用於管理 .sdf 資料庫的工具。 您也可以在程式碼中執行 SQL 命令,以執行許多 SQL Server 管理工作。
若要測試 .cshtml 頁面而不使用整合式開發環境 (IDE),您可以將它們部署至即時伺服器。 (請參閱我可以不使用 WebMatrix 來部署 ASP.NET Web Pages 網站嗎?)
不使用 IDE 來執行 IIS Express
如果您在電腦上安裝 IIS Express 做為 Web 伺服器,可以用此來測試頁面。 您可以從命令列執行 IIS Express,並將它與特定的連接埠號碼產生關聯。 然後在瀏覽器中要求 .cshtml 檔案時指定該連接埠。
在 Windows 中,以系統管理員權限開啟命令提示字元,並變更為 C:\Program Files\IIS Express。(針對 64 位元系統,請使用資料夾 C:\Program Files (x86)\IIS)。 然後使用網站的實際路徑,輸入下列命令:
iisexpress.exe /port:35896 /path:C:\BasicWebSite
您可以使用其他處理序尚未保留的任何連接埠號碼。 (超過 1024 的連接埠號碼通常未被佔用)。針對 path
值,請使用 .cshtml 檔案所在的網站資料夾路徑。
執行此命令以設定 IIS Express 來提供頁面之後,您可以開啟瀏覽器並瀏覽至 .cshtml 檔案。 使用如下的 URL:
http://localhost:35896/default.cshtml
如需有關 IIS Express 命令列選項的說明,請在命令列輸入 iisexpress.exe /?
。
我可以在 Web Pages 頁面上使用 ASP.NET Web Forms 控制項嗎?
否。 Web Forms 控制項,像是 CheckBox 控制項、驗證控制項和 GridView 控制項只能在 Web Forms 頁面 (.aspx 檔案) 中運作。 這些控制項需要 Web Forms 頁面架構。
我可以不使用 WebMatrix 來部署 ASP.NET Web Pages 網站嗎?
是。 您可以手動將網站檔案複製到伺服器 (通常是使用 FTP)。 如果您執行手動複製,還必須複製支援 SQL Server Compact (資料庫) 的檔案。 如需詳細資訊,請參閱不使用工具來部署 Web Pages 應用程式部落格文章。
我必須使用 WebSecurity 協助程式來支援登入嗎?
否。 屬於 ASP.NET 網頁一部分的 SimpleMembership
提供者是一個選項。 您也可以使用屬於 ASP.NET 的安全性提供者 (您可能習慣在 Web Forms 中使用)。 例如,就像在 Web Forms 中一樣,您也可以在 ASP.NET Web Pages 中使用表單驗證。 如需如何使用表單驗證的範例,請參閱 Microsoft 支援服務文章:如何使用 C#.NET 在 ASP.NET 應用程式中實作表單型驗證。
如需有關如何使用 Windows 驗證的資訊,請參閱在 ASP.NET Web Pages 中使用 Windows 驗證部落格文章。
ASP.NET Web Pages 是否支援 HTML5?
是。 您使用 ASP.NET Web Pages 建立的頁面 (.cshtml 或 .vbhtml 頁面) 在頁面轉譯前基本上是 HTML 頁面,其中也包含在伺服器上執行的程式碼。 只要使用者的瀏覽器支援 HTML5,您就可以在 .cshtml 或 .vbhtml 頁面中使用 HTML5 元素。
我可以搭配 Web Pages 使用 JavaScript 和 jQuery 嗎?
當然 您使用 ASP.NET Web Pages 建立的頁面 (.cshtml 或 .vbhtml 頁面) 只是含有伺服器程式碼的 HTML 頁面。 因此,在一般 HTML 頁面中可以使用 JavaScript 或 jQuery 執行的任何動作,也可以在 .cshtml 或 .vbhtml 頁面中執行。
WebMatrix 中的入門網站範本包含一些 jQuery 程式庫。 如果您使用該範本建立網站,Scripts 資料夾中包含 jQuery 核心程式庫 (jquery-1.6.2.js) 和 jQuery 驗證的程式庫 (jquery.validate.js 等)。
以下是一些說明如何搭配 ASP.NET Web Pages 使用 jQuery 的部落格文章:
使用 WebMatrix 將 jQuery 的好處新增至 ASP.NET Web Pages,作者 Rachel Appel
WebMatrix 和 jQuery 表單,作者 Mike Brind