C'est probablement quelque chose de petit, je ne vois pas ... j'ai un UserControls_LoginPopUp avec l'une des propriétés comme:pourquoi null (login pop-up)
public string urlForRedirecting {get; set;}
Ce contrôle utilisateur contient un ModalPopupExtender et une méthode pour connexion:
public void Login_Click(object sender, EventArgs e)
{
string user = txtUser.Text;
string passwordMD5 = UtilsStatic.GetMD5Hash(txtPassword.Text);
int id = checkUserAtLogin(user, passwordMD5);
if (id != -1)
{
//MySession.Current.userId = id;
lblStatus.Text = "Autentificare reusita!";
loginPopUp.Hide();
//The user will be redirected
Response.Redirect(this.urlForRedirecting);
this.urlForRedirecting = "";
}
else
{
MySession.Current.userId = -1;
lblStatus.Text = "Autentificare esuata!";
loginPopUp.Show();
}
}
maintenant, une autre page, un utilisateur clique sur un lien, et une méthode est tiré lorsque l'extension modale est indiquée pour qu'il puisse se connecter. S'il vous plaît Notez que je remplirai la propriété urlForRedirecting:
public void redirectToWishList(object sender, EventArgs e)
{
if (UtilsStatic.getUserLoggedInId() == -1)
{
ASP.usercontrols_loginpopup_ascx loginUserControl = (ASP.usercontrols_loginpopup_ascx)UtilsStatic.FindControlRecursive(Page, "loginPopUp");
ModalPopupExtender modal = (ModalPopupExtender)loginUserControl.FindControl("loginPopUp");
modal.Show();
//put the link to which the redirect will be done if the user will succesfully login in
loginUserControl.urlForRedirecting = getWishListLink();
}
else
Response.Redirect(getWishListLink());
}
Le problème est que, après les journaux de UserR à succès, l'URL est nulle (mais je l'ai déjà terminé !!!)
Response.Redirect(this.urlForRedirecting);
Voyez-vous pourquoi?
Salut Fermin. J'ai déplacé le code mais il y a le même problème. Cependant, la propriété urlForRedirecting est une propriété de loginUserControl, elle ne dépend donc pas de .show. Merci pour votre suggestion, de toute façon. –
Essayez de créer urlForRedirecting static car la valeur sera perdue lors de la publication. – Fermin
Votre commentaire a été utile. Bien que cela ne réponde pas à ma question, cela m'a donné l'idée d'utiliser une classe statique pour ce genre de situations. Merci. –