【问题标题】:ASP.NET System.Web.Routing and Querystring ParametersASP.NET System.Web.Routing 和 Querystring 参数
【发布时间】:2010-02-26 12:51:08
【问题描述】:

我正在使用 ASP.Net 3.5 SP1 "System.Web.Routing" 在我的 WebForm 应用程序中启用 URL 路由。现在我需要的是在 QueryString 中传递一些参数,例如:

http://www.mydomain.com/Search/Books/Computers?sort=author&pagesize=10

这是我正在使用的路线:

        routes.Add("BooksSearch", new Route
        (
           "Search/{Category}/{Product}",
           new CustomRouteHandler("~/Search.aspx")
        ));

路由工作正常,因为它被重定向到 search.aspx 但在查询字符串中我找不到额外的参数排序和页面大小。

【问题讨论】:

  • 我仍然无法找到让它工作的方法..任何指针?????

标签: asp.net routing system.web.routing


【解决方案1】:

请使用

Page.RouteData.Values["ID"]

而不是

Request.QueryString["ID"]

谢谢

【讨论】:

    【解决方案2】:

    您不必将它们添加到您的路线中,因为它们会被正常处理。

    参数在您的Request.Params 集合内和您的Request.QueryString 集合内。

    【讨论】:

    • Request.Params["sort"] 和 Request.QueryString["sort"] 都返回 null。我认为这是因为 CustomRouteHandler 在没有任何 QueryString 参数的情况下动态初始化目标页面。
    • 根据您的接受,我认为您已经找到了缺失的参数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-12
    • 2023-02-13
    • 2012-09-05
    • 1970-01-01
    • 1970-01-01
    • 2011-07-05
    • 1970-01-01
    相关资源
    最近更新 更多