簡體   English   中英

ASP.NET C#應用程序路由

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM