Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Server.Transfer vs. Response.Redirect

[es] :: .NET :: Server.Transfer vs. Response.Redirect

[ Pregleda: 3778 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

CallMeSaMaster

Član broj: 43611
Poruke: 466
*.PPPoE-2070.sa.bih.net.ba.



+1 Profil

icon Server.Transfer vs. Response.Redirect29.03.2006. u 13:37 - pre 219 meseci
Imam sledeci problem:

Koristio sam .NET studio 2003 i Framework 1.0.....(nije ni bitno) i cijeli moj sajt je radio koreketno i zadovoljavajuce.
Zatim sam promijenio Framework na 1.1 i od jednom naredba Server.Transfer("string") vise nije radila kako treba.To je bug od microsoft-a to sam vidio na official site od msdn.

Zatim sam nasao da kao zamjena za tu naredbu moze da se koristi Response.Redirect("string").Sada stvari rade opet normalno medjutim u mnogim objasnjenjima nisam bas razumio u cemu je razlika, koje itekako ima.

Moje pitanje: Da li neko moze da mi objasni u cemu je zapravo razlika?Cini mi se da se radi oko PostBack koncepta ali ne mogu bas to da sazvacem onako kako microsoft to objasnjava. Da li ove dvije naredbe rade sve isto(ama bas sve)?- Jer sitnice su nekad veoma bitne.

Desilo mi se sada da ova nova naredba radi dobro ali u lijevom dnu stranice ima comment "Done but with errors-sa onim bijednim trokuticem"-sto prije naravno nije bilo.

Dali postoji jos neka druga,mozda bolja naredba osim Response.redirect?

Hvala svima na odgovorima ali samo nemojte da me redirect na msdn i microsoft:)

[Ovu poruku je menjao CallMeSaMaster dana 29.03.2006. u 14:39 GMT+1]
 
Odgovor na temu

Sasa Popovic
Software Architect / co-owner, Vega IT
Sourcing
Novi Sad

Član broj: 7402
Poruke: 33
*.static.sbb.co.yu.

Sajt: www.vegaitsourcing.rs


Profil

icon Re: Server.Transfer vs. Response.Redirect29.03.2006. u 13:55 - pre 219 meseci
Pozdrav,

Osnovna razlika je u tome sto Response.Redirect vraca poruku Web Browser-u kojom mu kaze da predje na drugi URL. Znaci, komunikacija u tom slucaju izgleda ovako:
1. Na tvojoj web stranici user unosi nesto i radi submit
2. Zahtev dolazi na tvoj server, ti ga procesiras i radis Response.Redirect
3. Web Browser prima redirect zahtev i salje novi zahtev automatski na novi URL koji si ti zadao u Response.Redirect pozivu.
4. Novi zahtev stize na tvoj server (na novi URL odnosno novu stranicu) i ti konacno serviras HTML web browser-u.

Sa Server.Transfer imas dosta pogodnosti ali i nekih "nepogodnosti":
1. Server.Transfer cuva serverske resurse. Odnosno, izbegavas visestruku komunikaciju izmedju browser-a i server-a.
2. Server.Transfer ocuvava originalnu adresu u browser-u. To znaci da ako je korisnik bio na http://tvojsite.com/page1.aspx i ti uradis Server.Transfer("page2.aspx"), u web browser-u ce i dalje pisati "page1.aspx" bez obzira sto je korisniku servirana page2.aspx. Ovo mozes da smatras za prednost ali i manu - zavisi od konkretne situacije.
3. Server.Transfer moze da primi parametar "preserveForm". Ako ga postavis na true onda ce se novoj stranici preneti i svi request parametri. Znaci, ako radis Server.Transfer sa page1.aspx?myid=123&myotherparam=456 na page2.aspx onda ces i na page2.aspx moci da pogledas Request["myid"] i Request["myotherparam"]. Obrati paznju na to da je Microsoft napravio BUG kod ove metode ali postoji i resenje. O tome mozes vise da procitas na http://support.microsoft.com/default.aspx?id=kb;en-us;Q316920.

Ono sto ne mozes da uradis sa Server.Transfer je da uradis transfer na drugi domen. Znaci, ako hoces da uradis transfer sa http://mysite.com/mypage.aspx na http://www.google.com onda moras da koristis Response.Redirect.

Ja sam uvek za Server.Transfer osim kada sam primoran da koristim Response.Redirect. Inace, Server.Transfer sam koristio u obe verzije .Net framework-a (1.0 i 1.1) i radio mi je bez problema.

Nadam se da ce ovo pomoci.

Pozdrav,
Sasa
 
Odgovor na temu

CallMeSaMaster

Član broj: 43611
Poruke: 466
*.PPPoE-2070.sa.bih.net.ba.



+1 Profil

icon Re: Server.Transfer vs. Response.Redirect29.03.2006. u 14:08 - pre 219 meseci
Da malo su mi stvari jasnije.Ali posto vidim da je kod tebe to radilo htio bih to malo detaljnije znati-ako nije problem.

Ja na svojoj stranici koristim web controls odnosno tabs.NA klick od Submit button u mojim tabovima mi se ne ispisuje niti naziv niti polje koje neko treba da popuni-odnosno sta treba da unese u editbox.Sa Response.Redirect to radi ali sa transfer ne.Mislim mogao bih ti to pkazati na sajtu ako si zainteresovan pa da vidis?
Vjeruj mi ja uopce nemam pojma zasto ovo ne radi? A sa 1.0 je to 100% radilo

Hvala unaprijed
 
Odgovor na temu

Sasa Popovic
Software Architect / co-owner, Vega IT
Sourcing
Novi Sad

Član broj: 7402
Poruke: 33
*.ADSL.neobee.net.

Sajt: www.vegaitsourcing.rs


Profil

icon Re: Server.Transfer vs. Response.Redirect29.03.2006. u 22:25 - pre 219 meseci
Pozdrav,

Mogao bih da pogledam mada bi bilo bolje da prvo razumes dobro kako ASP .Net stranica radi. Preporucio bih ti (a i svakome drugom ko radi as ASP .Net ili pocinje da radi) da procitas sledeci clanak: http://www.15seconds.com/issue/020102.htm (The ASP.NET Page Life Cycle).

Kada budes video "zivotni ciklus jedne ASP .Net stranice" bice ti mnogo jasnije kako da implementiras to. Posebno u slucaju kada koristis kontrole (pretpostavljam da si mislio na ASCX odnosno web user constrols). Inace, evo kako ja to radim: uradim override OnPreRender metode i tek u OnPreRender postavljam vrednosti web user kontrolama. Znaci, prvo reagujem na Submit, procesiram zahtev i onda dodam web user kontrole u placeholders i postavim im vrednosti.

Ako i dalje budes imao problema, javi se pa cu pogledati.
 
Odgovor na temu

CallMeSaMaster

Član broj: 43611
Poruke: 466
*.PPPoE-2136.sa.bih.net.ba.



+1 Profil

icon Re: Server.Transfer vs. Response.Redirect30.03.2006. u 09:01 - pre 219 meseci
Shvatio sam ja kako to u principu radi.Sve je to lijepo i dobro ali meni ne pomaze odnosno ne kontam u cemu grijesim.

Ja sam ti stavio dio koda koji je sadrzan u mom buttonklick i uopce ne vidim neku gresku zasto se ne izvrsava korektno.

Private Sub btnValidate_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnValidate.Click
Dim DS As DataSet
Dim MyCommand As SqlCommand

Session("Inscription") = True

Session("Tip1") = CInt(Tip1.SelectedItem.Value)
Session("Tip2") = CInt(Tip2.SelectedItem.Value)

Server.Transfer("siteno2.aspx") /*Sa Response.Redirect radi:)
End Sub
Znaci kad klik na btn treba da transfer na siteno2.Ne radi!-Zasto?-Pojma nemam
 
Odgovor na temu

[es] :: .NET :: Server.Transfer vs. Response.Redirect

[ Pregleda: 3778 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.