Comment puis-je avoir la Réponse.Redirect() travailler à partir de la MasterPage?

J'ai un problème: lorsque j'appelle une Réponse.Redirect() de la MasterPage il ne fonctionne pas.
Eh bien, le débogage, je peux voir que, jusqu'à la Pre_Render() la méthode la page cible est chargé, mais est ensuite rendu à la page précédente.

Voici un peu de code pour mieux expliquer:

(à partir de MasterPageMain.maître.cs)

protected void Page_Init(object sender, EventArgs e)
{
    string m_QueryStringValue = Request.QueryString.Get("action");
    if ((!string.IsNullOrEmpty(m_QueryStringValue)) && (m_QueryStringValue.ToLower() == "send"))
    {
        if (Session["to"] != null && Session["to"] is List<string>) this.SendPageByMail();
        else
        {
            Session.Add("AddressToSend", Request.RawUrl);
            Response.Redirect("~/chooseRecipients.aspx");
        }
    }
}

J'ai un code javascript qui ajoute la chaîne de requête ajout de "action=envoyer" lorsque je clique sur le bouton Envoyer.

Si je suis sur la page "~/somethingInterestingToSend()" -par exemple - je veux aller sur la sélection des bénéficiaires de la page, mais lorsque je clique sur le bouton Envoyer, je vois toujours la même page.

Ce que peut être l'erreur?

Une note de côté: être prudent sur l'utilisation de session pour stocker des variables. Gardez à l'esprit que l'utilisateur peut avoir deux onglets ouverts avec votre site et sur chaque page d'écraser la valeur précédente. Il sera préférable d'envoyer l'url de retour dans la querystring

OriginalL'auteur p4bl0 | 2009-01-21