使用查询字符串并且没有页面名称在asp.net 3.5中重写URL

时间:2013-03-13 13:41:54

标签: asp.net url-rewriting

我已经使用global.asax实现了asp.net 3.5的URL重写代码。

这是一个例子。 www.ABC.com/Content/1/Flowers www.ABC.com/Content/1/Balloons

“内容”是我的页面名称,“鲜花”和“气球”是我的类别。 在我的情况下工作正常。

现在我要从网址中删除“内容”。所以我的网址应该是 www.ABC.com/1/Flowers

在没有页面名称的asp.net 3.5中是否可以?我没有使用“MVC”架构。

public static void RegisterRoutes(RouteCollection routes)
    {
        routes.Add("Home", new Route("Home", new WebFormRouteHandler("~/Client/Index.aspx")));
        routes.Add("Content", new Route("{SitepageID}/{name}", new WebFormRouteHandler("~/Client/Content.aspx")));
        routes.Add("FAQ", new Route("FAQ/", new WebFormRouteHandler("~/Client/Faq.aspx")));  
    }

现在我要删除我的页面名称。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用基于http模块的网址重写

您可以使用此方法HttpContext.RewritePath

链接:http://msdn.microsoft.com/fr-fr/library/system.web.httpcontext.rewritepath.aspx

注意:您创建httpmodule(通过实现IHttpModule)并注册您的模块

示例链接:开发/ URLrewritingHttpModuleC.htm“> http://www.java2s.com/Tutorial/ASP.NET/0180_Development/URLrewritingHttpModuleC.htm