我什么时候会使用Server.Transfer而不是PostBackURL?

Mat*_*t R 3 asp.net

或相反亦然.

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

或者我能做到

Server.Transfer("Invoice.aspx")
Run Code Online (Sandbox Code Playgroud)

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

小智 6

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

通常当你试图"在两者之间做出决定"时,这意味着你最好使用PostbackURL.

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