[英]asp.net c# app routing
我一直在嘗試啟動並運行一些路由。 我基本上想要這個網址:
www.example.com/SomebodysName
要么
www.example.com/agents/somebodysname
..要去...
www.example.com/portfolio.aspx?ran=somebodysname
我試圖使用來自MSDN的示例,使用globax.asax像這樣:
void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(System.Web.Routing.RouteTable.Routes);
}
public static void RegisterRoutes(System.Web.Routing.RouteCollection routes)
{
routes.MapPageRoute("", "agents/{name}", "portfolio.aspx?ran={name}");
}
但我無法使其正常工作,它說路由在命名空間System.Web中不存在。 如何使它以這種方式或另一種方式工作(web.config?)
確保您的Global.asax在以下方面具有using語句:
using System.Web.Routing;
您可以這樣映射路線,而無需在目標物理aspx頁面上設置參數:
routes.MapPageRoute("AgentPortfolioByName", "agents/{name}", "portfolio.aspx");
在Portfolio.aspx.cs的代碼隱藏中,您可以像這樣簡單地引用name
值:
string name = Page.RouteData.Values["name"].ToString();
這將確保您的ASP.NET 4+站點將按照您的期望/描述進行URL路由。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.