0

我想做一些类似于单击设置了 PostBackURL 的 asp.net 按钮时发生的事情。我已经尝试过Server.Transfer,但 URL 没有改变(这是我想要的)。有没有更好的方法来做到这一点,或者有没有办法让 Server.Transfer 显示正确的 URL?

4

2 回答 2

1

尝试Response.Redirect

更新:

恐怕您无法从代码隐藏中进行适当的回发

于 2010-08-16T17:06:37.323 回答
0

看:

ASP.NET 网页中的跨页发布

如何:将 ASP.NET 网页发布到不同的页面

asp:Button 
  ID="Button1" 
  PostBackUrl="~/TargetPage.aspx"
  runat="server"
  Text="Submit" />

编辑: 您还可以在代码隐藏中构造一个 HTTP POST 并将其发送到目标页面,然后将响应写入浏览器。这不会将浏览器地址栏中的 URL 更改为数据发布到的实际页面。你能做什么取决于你有什么控制权。发布到的页面是否在您的控制之下?它是否包含特定于发布到它的任何文本/数据?您可以进行 POST,然后重定向/转移到目标页面,但这可能会或可能不会正确显示 POST 的结果。

如果您决定采用这种方式,如何使用 HttpWebRequest 将 POST 请求发送到另一个 Web 服务器可能会有所帮助。

于 2010-08-16T18:04:31.423 回答