如何重写url字符串.
在asp.net中使用c#.net.
在asp.net中使用c#.net.
解决方法@H_404_5@
ASP.NET支持通过
System.Web.Routing进行URL重写,它不仅适用于ASP.NET MVC.
请参阅MSDN上的How to: Use Routing with Web Forms.
要通过page~ / example / foo.aspx处理URL~ / foo,请在global.asax.cs中注册路由
void Application_Start(object sender,EventArgs e)
{
Route r = new Route("{Parameter}",new ExampleRouteHandler());
Routes.Add(r);
}
路由处理程序可能如下所示:
public class ExampleRouteHandler : IRouteHandler
{
public IHttpHandler GetHttpHandler(RequestContext requestContext)
{
string page = requestContext.RouteData.GetrequiredString("Parameter");
if (page == "") {
page = "default";
}
string @virtual = string.Format("~/example/{0}.aspx",page);
return (Page)BuildManager.CreateInstanceFromVirtualPath(@virtual,typeof(Page));
}
}
请参阅MSDN上的How to: Use Routing with Web Forms.
要通过page~ / example / foo.aspx处理URL~ / foo,请在global.asax.cs中注册路由
void Application_Start(object sender,EventArgs e) { Route r = new Route("{Parameter}",new ExampleRouteHandler()); Routes.Add(r); }
路由处理程序可能如下所示:
public class ExampleRouteHandler : IRouteHandler { public IHttpHandler GetHttpHandler(RequestContext requestContext) { string page = requestContext.RouteData.GetrequiredString("Parameter"); if (page == "") { page = "default"; } string @virtual = string.Format("~/example/{0}.aspx",page); return (Page)BuildManager.CreateInstanceFromVirtualPath(@virtual,typeof(Page)); } }