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

ASP.NET 路由系統:路由映射細節與預設值應用

     編輯:關於ASP.NET

透過 RouteTable.Routes 取得全域路由表,呼叫 MapPageRoute 註冊 URL 模板與實體檔案的對應。本文以天氣查詢為例,示範路由註冊細節與預設值運作。

路由註冊範例

在 Global.asax 的 Application_Start 中註冊:

var defaults = new RouteValueDictionary { { "areacode", "010" }, { "days", 2 } };
var constraints = new RouteValueDictionary { { "areacode", @"0\d{2,3}" }, { "days", @"[1-3]{1}" } };
var dataTokens = new RouteValueDictionary { { "defaultCity", "BeiJing" }, { "defaultDays", 2 } };

RouteTable.Routes.MapPageRoute("default", "{areacode}/{days}", "~/weather.aspx", false, defaults, constraints, dataTokens);

預設值運作效果

因設有預設值,以下三種 URL 均會解析為相同結果:

  • 應用程式根目錄(使用全部預設值)
  • 僅指定區號(如 /021)
  • 同時指定區號與天數(如 /021/3)

路由資訊輸出

解析出的變數存放於 RouteData.Values,註冊時的 DataTokens 也會複製到 RouteData.DataTokens 中。預設 RouteHandler 為 PageRouteHandler。

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