c# - 如何从 url 中删除查询字符串参数?

标签 c# asp.net query-string

假设我有链接 http://www.somesite.com/file.aspx?a=1&b=2

现在我想删除所有参数,所以它变成了:

http://www.somesite.com/file.aspx

或者我可能只想删除其中一个参数,例如

http://www.somesite.com/file.aspx?b=2

有没有办法在 C# 中完成上述操作?发生的事情是我来自另一个页面,在 url 中有一个名为 edit 的参数,但是当页面回发时,edit 参数仍然存在,所以它仍然认为它处于编辑模式。示例:

用户 A 转到 page one.aspx 并单击编辑链接。它们被带到 two.aspx?edit=true。在页面加载期间,它发现查询字符串参数 edit 不为空,并将内容置于编辑模式。一旦用户完成编辑,页面就会刷新,但 url 仍然是 two.aspx?edit=true 并保持内容处于编辑模式,而实际上它应该是 two.aspx

最佳答案

Request.Querystring 是只读集合 - 您不能修改它。

如果您需要删除或更改查询字符串中的参数,唯一的出路是使用更新的查询字符串触发新的 GET 请求 - 这意味着您必须使用更新的 URL 执行 Response.Redirect。这将导致您丢失当前页面的 View 状态。

关于c# - 如何从 url 中删除查询字符串参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1951038/

相关文章:

c# - WPF TextBox 和 RichTextBox 的组合

c# - 部分类可以用于网络服务吗?

Coldfusion 更好地利用 cfparam

asp.net-web-api - 访问 ASP.Net Web Api 中的查询字符串?

c# - 是否可以将 signalR 方法配置为仅从服务器调用?

c# - 如何在 fluent nhibernate 映射中使用数据库过程

c# - 如何自定义 DockPanel 大小的 : Create a GridSplitter,(C#、WPF)

c# - 为什么 fileupload 控件不上传其中包含相同数据的多个文件?

html - 缩放时导航栏不会折叠

c# - 根据 "/"拆分字符串(Uri的路径)