[英]How to use Routing in asp.net 3.5 in web form
我已经使用了以下代码,但是我无法访问我的查询字符串……
public class RouteHandler : IRouteHandler
{
string _virtualPath;
public RouteHandler(string virtualPath)
{
_virtualPath = virtualPath;
}
public IHttpHandler GetHttpHandler(RequestContext requestContext)
{
foreach (var value in requestContext.RouteData.Values)
{
//requestContext.HttpContext.Items[value.Key] = value.Value;
// requestContext.HttpContext.
//System.Web.HttpContext.Items[value.Key] = value.Value;
}
return (Page)BuildManager.CreateInstanceFromVirtualPath(_virtualPath, ypeof(Page));
}
global.asax .............
private void RegisterRoutes(RouteCollection routes)
{
routes.Add("home", new Route("home", new RouteHandler("default.aspx")));
datatable dt = getmyurl();
if (dt != null && dt.Rows.Count > 0)
{
foreach (DataRow dr in dt.Rows)
{ try
{
routes.Add(dr["tag"].ToString() + "/" + dr["Ntag"].ToString(), new Route("{Pid}/{Cid}", new RouteHandler("~/test1/test1.aspx")));
}
catch (Exception exx){}
}
}
}
现在我无法查询字符串。 我认为我的自定义RouteHandler编码不正确。 我在默认页面上有一个按钮,我可以在其中重定向页面
Response.Redirect(dt.Rows[0]["tag"].ToString() + "/" + dt.Rows[0]["Ntag"].ToString());//
response.redirect("goa/agra");
请帮我。
以下代码为我工作。
Page.RouteData.Values["ID"]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.