Asp.net允许我们注册新的自定义路线
http://www.example.com/products.aspx?category=software
像这样称呼他们:http://www.example.com/products/software
void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
static void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute("testroute", "Test/{parame}", "~/Default.aspx");
}
此方法适用于Kentico,但仅适用于.aspx页面(例如〜/ CMSPages / Default.aspx中的页面)。 我的问题是如何为使用Portal Template方法创建的页面获得相同的结果? 我试图制作自己的HttpHandler
public class CustomHandlerProduct : IHttpHandler
{
public CustomHandlerProduct()
{
//
// TODO: Add constructor logic here
//
}
public bool IsReusable
{
// To enable pooling, return true here.
// This keeps the handler in memory.
get { return false; }
}
public void ProcessRequest(HttpContext context)
{
}
}
甚至根据本文的HttpModule link to CodeProject article
但是我无法达到预期的效果
任何想法?
答案 0 :(得分:2)
如果您想使用Portal引擎,是否有理由不使用Kentico URL重写功能?通配符URL与路由的工作方式非常相似。请参阅文档https://docs.kentico.com/display/K82/Wildcard+URLs