2009-10-19 9 views
0

OK Je ne sais pas si le titre de la question est correcte, développeur web novice ici, donc garder avec moi.
Ceci est un webiste ASP.NET en cours d'exécution sur IIS 6.0
Voici donc le problème: j'ai deux pages appelées Page1 et Home
vous pouvez naviguer à la fois comme si
www.mysite.com/Page1.aspx, www.mysite.com/Home.aspxrediriger un lien de la page et le texte changeant de page basée sur le lien

La page 1 subit actuellement de nombreux changements qui vont finir par ressembler à Home, à l'exception de quelques changements de texte vraiment minimes. En outre, il y a un certain nombre d'e-mails dans la nature avec les clients qui pointent vers Page1 et \ ou Home

Ce que je veux est une solution qui fait la

suivante
  1. Créer une page (par exemple newhome.aspx) qui affiche le texte approprié en fonction de l'URL du lien que les gens cliqué sur le bouton pour obtenir ici

  2. Laissez les liens existants vont à cette nouvelle page (et bien sûr selon l'exigence ci-dessus le texte approprié sera affiché)

Je suppose qu'ils en quelque sorte sont la même exigence, ligne de fond, je veux seulement une page et tous les liens existants de continuer à travailler comme être redirigé vers cette nouvelle page

Merci

Répondre

0

Afin de vous assurer que les anciens liens encore du travail, vous pouvez:

  • Conserver les anciennes pages là-bas et utiliser Response.Redirect() dans les méthodes de Page_Load, et passer une sorte de paramètre de chaîne de requête dire à la nouvelle page quel texte montrer. Par exemple:

    Response.Redirect ("~/newhome.aspx? OldUrl =" + Server.UrlEncode (Request.Url.ToString()));

  • Ou utiliser le système ASP.NET routing pour créer des itinéraires à partir des anciennes URL vers la nouvelle page. Ensuite, à l'intérieur de la nouvelle page que vous obtenez l'URL que l'utilisateur a utilisé de Request.Url.

Puis dans la nouvelle page que vous pouvez faire quelque chose comme ceci:

protected void Page_Load(object sender, EventArgs e) 
{ 
    string requestUrl = ""; 

    . . . 

    if (requestUrl.ToString().EndsWith("Page1.aspx")) 
    label.Text = "foo"; 
    else 
    label.Text = "bar"; 
} 
0

Vous pourriez développer votre nouvelle page et dans l'ancienne page (OnLoad) si vous pouvez simplement faire un Response.Redirect() à la nouvelle page?

Questions connexes