la configurazione di default per la protezione delle pagine, prevede che quando tenti di accedere ad una pagina protetta, vieni rimandato alla pagina di login specificata nel web config in questo modo:
Quando vieni rimandato alla pagina "loginpage.aspx" l'url risulta essere questo:codice:<authentication mode="Forms"> <forms name=".auth" protection="None" path="/" loginUrl="~/Pagine/Login/loginPage.aspx" timeout="2880"/> </authentication>
http://localhost:42678/Pagine/Login/...aProtetta.aspx
Ovvero piene passato in querystring, il parametro "ReturnUrl" che identifica la pagina alla quale tornare dopo il login.
Devi sfruttare dunque questo parametro.
Lo puoi fare in diverse maniere:
aggiungendo nuovamente il parametro al link per la pagina di registrazione, mettendo il valore in session, gestendo l'evento della pagina al momento dell'abbandono.
La cosa più semplice potrebbe essere appunto memorizzarlo in Session. Quindi nell'evento Load della pagina loginPage.aspx:
Quindi, dalla pagina di registrazione:codice:protected void Page_Load(object sender, EventArgs e) { object ReturnUrlObj = Request.QueryString["ReturnUrl"]; string ReturnUrlString = string.Empty; if (ReturnUrlObj != null && !string.IsNullOrEmpty(ReturnUrlObj.ToString())) ReturnUrlString = ReturnUrlObj.ToString(); Session["ReturnUrl"] = ReturnUrlString; }
fai solo attenzione che il tuo "CreateUserWizard1" abbia la proprietà LoginCreatedUser a True.codice:protected void CreateUserWizard1_ContinueButtonClick(object sender, EventArgs e) { object ReturnUrlObj = Session["ReturnUrl"]; string ReturnUrlString = string.Empty; if (ReturnUrlObj != null && !string.IsNullOrEmpty(ReturnUrlObj.ToString())) ReturnUrlString = ReturnUrlObj.ToString(); CreateUserWizard1.ContinueDestinationPageUrl = ReturnUrlString; }
ciao

