在asp.net中读取查询字符串而不指定任何页面名称
发布时间:2020-07-21 09:47:33 所属栏目:asp.Net 来源:互联网
导读:如何读取aspx页面中的任何字符串. 例如:http://foo.com/bike站 我想在指定的aspx页面中读取/获取字符串. 预期的页面字符串是自行车架 预期的页面是getstring.aspx 在这里,我想读取字符串并重定向到指定的页面. 注意:我喜欢在ASP.Net(不使用MVC)中执行此操作
如何读取aspx页面中的任何字符串. 例如:http://foo.com/bike站 我想在指定的aspx页面中读取/获取字符串. 在这里,我想读取字符串并重定向到指定的页面. 解决方法您可以使用Route解决此问题.我做了一个简单的演示,你可以在几分钟内试用.在Global.asax.cs文件中,添加以下方法:void RegisterRoutes(RouteCollection routes) { routes.MapPageRoute("Products","Products/{product}","~/getstring.aspx",false,new RouteValueDictionary { { "product","NoneSelected" } } ); } 在同一个文件中,在已经存在的void Application_Start(object sender,EventArgs e)方法中,添加RegisterRoutes(RouteTable.Routes);: void Application_Start(object sender,EventArgs e) { RegisterRoutes(RouteTable.Routes); } 有了这个,你已经配置了一个Route,它将接受这样的请求: http://foo.com/Products/bike%20stand 并将其映射到getstring.aspx.请注意,我有url编码url中的空格. 在getstring.aspx中,你可以像这样访问值(“自行车站”): protected void Page_Load(object sender,EventArgs e) { string routeValue = ""; if (RouteData.Values.ContainsKey("product")) routeValue = RouteData.Values["product"].ToString(); //routeValue now contains "bike stand" SelectedProduct.Text = routeValue; } 我已在此示例中的应用程序文件夹下的“Products”路径中设置了Route.我不建议您直接在应用程序文件夹下设置路径,如问题所示.如果你绝对想要,你可以这样做: void RegisterRoutes(RouteCollection routes) { routes.MapPageRoute("Products","{product}","NoneSelected" } } ); } (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 使用umbraco的iis应用程序池使用过多的内存
- asp.net-web-api – WebAPI中的长时间运行任务
- asp.net-web-api – Web API / MVC 6中的安全JSON Web令牌
- asp.net – 访问asp:从代码背后的内容
- asp.net-mvc – ASP.NET MVC忽略所有url结尾的“.html”
- QueryString与ASP.NET MVC 6锚点标签助手
- 实现ASP.NET多文件上传程序代码
- asp.net html控件的File控件实现多文件上传实例分享
- asp.net-mvc – AntiXss保护Html模型属性
- ASP.NET:web.config在哪里/如何缓存?