473,473 Members | 1,736 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

Reponse.Redirect vs Server.Transfer

Hi all,

What are the major considerations when considering Server.Transfer?
I have some legacy apps (when I say legacy, I mean ASP.NET1.0) that use
Server.Transfer for almost everything. I always thought
Response.Redirect was better because more of the items are GCed. So I
am rethinking about the importance of Server.Transfer usage. In the old
ASP days I seem to remember (I could be wrong) that when I did a
Server.Transfer, all objects on the old page were still available to be
accessed in the new page. However this doesn't seem to be the case in
..NET and indeed would seem somewhat contradictory to an OO paradigm.

So I guess I just want to know when to use Server.Transfer, and what
should I be considering about memory usage and GC and so on.

Many thanks,
Steven

Jul 18 '06 #1
5 3749
"Steven Nagy" <le*********@hotmail.comwrote:
What are the major considerations when considering Server.Transfer?
I have some legacy apps (when I say legacy, I mean ASP.NET1.0) that use
Server.Transfer for almost everything. I always thought
Response.Redirect was better because more of the items are GCed.
The two have different semantics. Server.Transfer continues processing
on the server, but on a different URL on the server. Response.Redirect
sends an HTTP redirect back to the client, and exits the server. The
client then reconnects on the new URL.

With Response.Redirect, the client's URL changes. With Server.Transfer,
it doesn't.

Your choice should be based on which semantics you need.

-- Barry

--
http://barrkel.blogspot.com/
Jul 18 '06 #2
So there's absolutely no other considerations?
Server.Transfer still GCs to the same extent as Response.Redirect?

So Response.Redirect is actually quite time consuming?
Since it sends a response back to the client telling it to request a
new page?
That's a whole extra round trip right?
In that case, why EVER use Response.Redirect ?

Thanks,
Steven

Jul 18 '06 #3
"Steven Nagy" <le*********@hotmail.comwrote:
So there's absolutely no other considerations?
Server.Transfer still GCs to the same extent as Response.Redirect?
Garbage collection has nothing to do with it. With a redirect in a
load-balanced environment, the client might not even enter the same
server. Certainly, objects associated with the current request will no
longer be rooted and will be eligible for collection, since request
processing will cease and the request thread will exit back out to
ASP.NET.
So Response.Redirect is actually quite time consuming?
Since it sends a response back to the client telling it to request a
new page?
That's a whole extra round trip right?
Yes.
In that case, why EVER use Response.Redirect ?
When pages move? So that the target URL can be bookmarked? To transfer
control to a different website?

-- Barry

--
http://barrkel.blogspot.com/
Jul 18 '06 #4
Barry Kelly wrote:
"Steven Nagy" <le*********@hotmail.comwrote:
>In that case, why EVER use Response.Redirect ?

When pages move? So that the target URL can be bookmarked? To transfer
control to a different website?
....or my favorite - to make the browser to a GET after a POST so that the
back button works sensibly. Totally contrary to the ASP.NET POST-centric
model, but the user experience is so much better.

-cd
Jul 18 '06 #5
Ok thanks guys. I guess I need to use Server.Transfer a bit more then.
When none of those reasons you supplied are relevant, then
Server.Transfer is the way to go to save the round trip.

Thanks again peeps.

Jul 18 '06 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
by: \A_Michigan_User\ | last post by:
Ok, I give up... why do 1-4 work fine... but 5-6 give "can't find" errors? 1. Client-side VBscript code: call navigate("\\209.11.22.33\MyDir") 2. Client-side VBscript code: location.href...
3
by: Justin | last post by:
Hi, Im confused here over the usage of Response.Redirect and Server.Transfer. I used frameset for my work, what are the proper usages of the two methods that seems working similar.. The...
4
by: Harsh Thakur | last post by:
Hi, I'd like to know the performance related differences between Response.Redirect and Server.Transfer. I'd like to redirect the user to a different page. I can either do a...
5
by: RayAll | last post by:
I have used a response.redirect() in the first page of my weblog to transfer it to anther page,but it seemes to be slow.Is there a workaround (probably Server.Transfer???)??? Thanks
3
by: Alan Silver | last post by:
Hello, Sorry if this is a stupid question, but I can't really see much difference between these tow methods according to the scant info in the SDK. Could anyone enlighten me? TIA -- Alan...
6
by: Coleen | last post by:
Hi all :-) I need to redirect to multiple pages on click of a transmit button, without redisplaying each page. This redirection is to capture session variables that are created on each page and...
2
by: Nathan Sokalski | last post by:
The last two lines of code in the Click event of a Button Control on my page are: Me.WelcomeEmail() Response.Redirect("mainmenu.aspx") The last line of code in Me.WelcomeEmail() is:
9
by: RN1 | last post by:
When a server encounters the line Response.Redirect("abcd.asp") in a ASP script, the server tells the browser that it has to be redirected to another page (which is abcd.asp, in this case)....
3
by: jasonheath.net | last post by:
I apologize in advance for the length of this post. I wanted to get as much detail as possible in here. We have 1 web app that contains the functionality to do some single sign-on logic. The...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
muto222
php
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.