我想从C#中的url中删除查询字符串。我将使用来自另一个页面http://www.something.com/details.aspx?id=100的查询字符串重定向到此页面。 但状态栏中的网址应更改为http://www.something.com/search.aspx。
我无法使用会话或“发布”。我尝试实现url重写,但我真的不明白如何设置规则来删除查询字符串。
任何人都应该帮忙......
答案 0 :(得分:1)
它不是删除查询字符串的规则,而是它的KIND OF A REDIRECT(url重写),请参阅。
if (this.Request.Path.Contains("/search.aspx"))
base.Context.RewritePath("/details.aspx?id=100");
您可以在Global.asax Application_BeginRequest方法中设置此代码。
当然,您最好使用正则表达式而不是Contains方法。
此代码表示您将重复使用details.aspx,但在您的网址上使用search.aspx。因此,不是将用户重定向到/details.aspx?id=100,而是直接将他发送到/search.aspx并完成,您不必“删除查询字符串”,因为没有查询字符串给用户。