2016-02-09 81 views
1

我使用ASP.NET路由漂亮的URL,但我不能訪問QueryStringParameters(只有RouteData值)。我正在使用Web窗體進行路由。如何訪問QueryString參數,如果我使用路由

這裏是比如我的RegisterRoutes的(Global.asax中):

routes.MapPageRoute("Catalog", "{language}/catalog/", "~/Pages/Catalog.aspx?step=1"); 

我使用此代碼爲Catalog.aspx頁面訪問參數 「臺階」:

string value = Request.QueryString["step"]; 

但它返回null 。

如何訪問QueryString參數「step」如果我不想從RouteData中獲取它?

+0

嘗試Request.RequestUri.ParseQueryString(); –

回答

0

使用GetFreindlyURLSegement。您可能需要獲取NuGet軟件包(如果您還沒有它)Micorsoft.AspNet.FriendlyURLs

var Segment = Request.GetFriendlyUrlSegments().ToList(); 
if (Segment.Count <= 0) 
{ 
    return; 
} 

string param1 = Segment[0].ToString(); 
string param2 = Segment[1].ToString(); 
相關問題