首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET Web Forms 路由完整指南

     編輯:關於ASP.NET

路由引擎簡介

.NET Framework 3.5 SP1 內建路由引擎,將 URL 與實體 .aspx 頁面解耦,支援友善 URL。雖然舊版也能透過 URL Rewriting 達成,但路由提供更簡單、可測試的機制。

什麼是路由?

傳統 URL:/WebForms/RecipeDisplay.aspx?id=5
路由 URL:/recipe/5 或 /recipe/tacos

路由將 URL 分解為參數,導向對應處理元件。recipe 為參數一,5 或 tacos 為參數二,不再暴露實體路徑與查詢字串。

URL 重寫的缺點與路由優勢

  • RewritePath 改變虛擬路徑:導致 Postback 需額外處理,否則回發至內部重寫後的 URL。
  • 單向轉換:難以從內部 URL 反向產生公開 URL,產生超連結時不便。
  • 路由引擎提供雙向映射:RouteUrl、RouteLink 可由參數產生正確 URL。

路由架構圖

路由、路由處理常式與路由模組

啟用路由步驟

  1. 於 Global.asax 的 Application_Start 註冊路由:
    RouteTable.Routes.Add(new Route("recipe/{name}", new PageRouteHandler("~/RecipeDisplay.aspx")));
  2. 頁面中透過 RouteData.Values["name"] 取得參數。

結語

路由讓 Web Forms 也能擁有乾淨、SEO 友善的 URL,並解決傳統 URL Rewriting 的諸多痛點。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved