Toon posts:

[ASP.NET] Redirect.transfer neemt return parameter niet mee*

Pagina: 1
Acties:

Verwijderd

Topicstarter
Bij voorbaat mijn nederige excuses voor mijn enorme noob-heid. Wel wil ik alvast aangeven dat ik uitgebreid gezocht heb via google e.d. hoe dit probleem op te lossen en hoop daarom dat jullie een antwoord hebben.

Ben begonnen met mijn eerste asp.net/vb projectje. Het gaat om een web-appje waarin medewerkers hun CV kunnen vastleggen en bestaat in de kaalste vorm uit 2 aspx-pagina's. De gegevens worden in sql server 2005 express opgeslagen. Even de context:

pagina 1: Naam, Adres, Woonplaats, personeelsnummer, e.d. worden ingevuld
-> Bij submit worden de gegevens via sqldatasource.insert naar SQL geslingerd. Dit werkt! Vervolgens moet na de INSERT (gebeurt via Stored Procedure waarbij scope_identity() de sleutel teruggeeft; niet iedereen in deze DB zal een personeelsnummer hebben vandaar de PK-kolom) de browser geredirect worden naar pagina 2.

pagina 2: hier kan de gebruiker zijn werkervaringen en cursussen e.d. invoeren (deze zullen dan ge-INSERT worden in combinatie met de PK van de zojuist ingevoerde gebruiker om enige normalisatie in de DB te verkrijgen)

PROBLEEM:
In de response.redirect moet de return value van de stored procedure worden meegegeven om in de volgend pagina gebruikt te kunnen worden. HIER gaat het fout. Er wordt wel ge-redirect, maar er wordt geen querystring meegegeven (Ik wil: CV_form2.aspx?userkey="14", maar krijg: CV_form2.aspx) In het tweede formulier lukt het me ook niet om bij wijze van controle de waarde in een label terug te laten komen dus het leek me dat het ook niet achter de schermen doorgegeven werd als dat uberhaupt al kan (kan geloof alleen met klassieke form post ipv get)

In onderstaande code gebruik ik nog even een vaste sleutel om niet teveel verschillende problemen door elkaar te laten lopen.

Code CV_form1.aspx.vb
Visual Basic .NET:
1
2
3
4
5
Protected Sub Opslaan_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Opslaan.Click
        SqlDataSource2.Insert()
        'Hier moet nog wat code om de return parameter te onthullen (suggesties welkom :) )
        Response.Redirect("CVform_2.aspx?UserKey=14")
    End Sub


Code CV_form2.aspx.vb
Visual Basic .NET:
1
2
3
4
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim UserKey= Request.QueryString("UserKey")
        Label1.Text = "Userkey = " + UserKey
    End Sub



Het leek allemaal zo simpel. Wie red mij?

Alvast grote dank!

Groet,

Bas

  • Daspeed
  • Registratie: Maart 2001
  • Laatst online: 12:17
Je redirect wel naar een goede pagina?
CVform_2.aspx
CV_form2.aspx

Is de code die je post overgetyped of letterlijk gekopieerd?

  • gorgi_19
  • Registratie: Mei 2002
  • Nu online

gorgi_19

Kruimeltjes zijn weer op :9

Heb je al gewerkt met breakpoints / gedebugged mbv traces? En kwam hij toen wel steeds goed uit?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
@DrClearBottom: Ik redirect wel naar de juiste pagina, want hij komt wel op die pagina alleen dan zonder de toevoeging "?Userkey=14" in de URL. De code is ge-copy/paste.

@gorgi_19: Breakpoints, traces? Ik kan me er iets bij voorstellen, maar geen idee hoe ik dat moet doen. Suggesties waar ik me kan inlezen :)

edit: Inmiddels breakpoints gevonden |:( :o

edit 2: De volgende link geeft goeie info over breakpoints en tracing voor diegenen die net als ik nog totaal niet wisten hoe dat werkt in visual studio 2005 express: http://go.microsoft.com/?linkid=6075674

[ Voor 32% gewijzigd door Verwijderd op 14-03-2007 15:15 ]