C# 如果使用路由,如何访问查询字符串参数

C# 如果使用路由,如何访问查询字符串参数,c#,asp.net,webforms,query-string,routedata,C#,Asp.net,Webforms,Query String,Routedata,我对漂亮的URL使用ASP.NET路由,但我无法访问QueryStringParameters(仅路由数据值)。我正在使用Web表单的路由 下面是我的RegisterRoutes(Global.asax)示例: 我使用此代码访问Catalog.aspx页面中的参数“step”: string value = Request.QueryString["step"]; 但它返回null 如果我不想从RoutedData设置QueryString参数“step”,如何访问它?使用GetFreindl

我对漂亮的URL使用ASP.NET路由,但我无法访问QueryStringParameters(仅路由数据值)。我正在使用Web表单的路由

下面是我的RegisterRoutes(Global.asax)示例:

我使用此代码访问Catalog.aspx页面中的参数“step”:

string value = Request.QueryString["step"];
但它返回null


如果我不想从RoutedData设置QueryString参数“step”,如何访问它?

使用GetFreindlyUrlSegment。您可能需要获取NuGet软件包(如果您还没有)Micorsoft.AspNet.friendlyURL

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

string param1 = Segment[0].ToString();
string param2 = Segment[1].ToString();
var Segment=Request.GetFriendlyUrlSegments().ToList();

如果(Segment.Count使用GetFreindlyUrlSegment。您可能需要获取NuGet包(如果您还没有)Micorsoft.AspNet.FriendlyURLs

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

string param1 = Segment[0].ToString();
string param2 = Segment[1].ToString();
var Segment=Request.GetFriendlyUrlSegments().ToList();

if(Segment.Count Try Request.RequestUri.ParseQueryString();Try Request.RequestUri.ParseQueryString();