3

或相反亦然。

更新:
嗯,假设我有一个购物车应用程序,用户点击 Checkout 按钮。我要做的下一件事是将用户发送到 Invoice.aspx 页面(或类似页面)。当用户点击结帐时,我可以Button.PostBackURL = "Invoice.aspx"

或者我可以

Server.Transfer("Invoice.aspx")

(我还更改了标题,因为该方法称为 Transfer 而不是 TransferURL)

4

3 回答 3

6
  • Server.TransferURL 不会导致 HTTP 请求/响应的往返。地址栏不会更新,只要浏览器知道它只收到一个文档。Server.Transfer 还保留执行上下文,因此脚本“继续运行”而不是“重新开始”。
  • PostbackURL 确保 HTTP 请求,导致可能不同的 URL,当然会产生网络延迟成本。

通常,当您尝试“在两者之间做出决定”时,这意味着您最好使用 PostbackURL。

随意扩展您的具体问题,我们可以查看您的确切需求。

于 2008-09-15T19:34:34.823 回答
3

这是两者之间的一个很好的细分:

Server.Transfer 与 Response.Redirect

于 2008-09-15T19:34:18.490 回答
1

Server.Transfer 完全由服务器完成。Postback 是从客户端发起的,用于发布表单内容,并且 postback url 标识要发布到的页面。

也许您打算与 Response.Redirect 进行比较,后者会强制客户端提交新 url 的新请求。

于 2008-09-15T19:29:52.837 回答