开发者

Whats the difference between the following page transfer methods

开发者 https://www.devze.com 2023-03-26 14:22 出处:网络
What is t开发者_如何学编程he difference between the following: Server.transfer? Response.Redirect?

What is t开发者_如何学编程he difference between the following:

  1. Server.transfer?
  2. Response.Redirect?
  3. Postbackurl?

When should I decide to use which?


Server.Transfer tells ASP.NET to redirect processing to another page within the same application. This happens completely server side. This is more "efficient" as it happens on the server side but there are some limitations with this method. The link below describes some of these.

Response.Redirect actually sends a HTTP 302 status code back to client in the response with a different location. The client is then responsible for following the new location. There is another round trip happening here.

PostBackUrl is not a "transfer method" but rather an property that tells the browser which URL to post the form to. By default the form will post back to itself on the server.

Here's a good link: http://haacked.com/archive/2004/10/06/responseredirectverseservertransfer.aspx


Server.Transer() works server-side. It will reply to the client with a different page than the client requested. If the client refreshes (F5), he will refresh the original page.

Response.Redirect() replies to the client that it should go to a different page. This requires an additional roundtrip, but the client will know about the redirect, so F5 will request the destination page.

PostbackUrl is a property telling an ASP control where to go when clicked on the client. This does not require an additional round trip while keeping the client informed. If you can use this method, it's generally preferable to the other choices.


  1. Server.Transfer:

    Transfers request from one page to other on server. e.g. Browser request for /page1.aspx

    Request comes on page1 where you do Server.Transfer("/page2.aspx") so request transfers to page2 And page2 returns in response but browser's address bar remains showing URL of /page1.aspx

  2. Response.Redirect

    This statements tells browser to request for next page. In this case browser's address bar also changes and shows new page URL

  3. PostBackUrl

    You can mention it on Buttons or Link buttons. This will submit the form to the page provided. It is similar to the:

    <form method="post" action="/page2.aspx">
    
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号