Question : Dossier de xml de lecture dans global.asax pour réorienter l'URL de vanité pour corriger la page

J'ai créé un dossier de xml qui a un URL de vanité et l'URL de réorientation. Je veux que l'asax global lise ce dossier pour réorienter la demande de page à la page appropriée. Tellement par exemple si quelqu'un saisit le rel= " nofollow " de " _blank " de target= de " http://www.company.com/products " de href= de le ducts de http://www.company.com/pro ont qui soit réorienté au rel= " nofollow " de " _blank " de target= de " http://www.company.com/siteproducts/default.aspx " de href= de le eproducts/default.aspx de http://www.company.com/sit. Est-ce qu'au-dessous de un certain code I est wrote.

< ? encoding= " utf-8 " du version= " 1.0 " de xml ? produits " redirecturl= " /siteproducts/default.aspx de vanityurl= " de

? WT.MC_ID=23 " vanityurl= de
" comparent le " redirecturl= " /siteproducts/default.aspx ? WT.MC_ID=24 "/>


global.asax

void Application_BeginRequest (expéditeur d'object, e)
{strThisUrl d'EventArgs de corde de
; strRedirectLink de corde du
;
XmlDocument Doc. = nouveau XmlDocument () ; Doc. du
. Charge (Server.MapPath (« /redirects.xml »)); nodeReader du
XmlNodeReader = nouveau XmlNodeReader (Doc.) ; Arrangements du
XmlReaderSettings = nouveau XmlReaderSettings () ; le
settings.IgnoreComments = rectifient ; le
settings.IgnoreProcessingInstructions = rectifient ; le
settings.IgnoreWhitespace = rectifient ; Lecteur du
XmlReader = XmlReader.Create (nodeReader, arrangements) ;
tandis que (lecteur. Lu ())
{
{cas XmlNodeType.Element de commutateur de
(reader.NodeType) de
: strThisUrl du
= Request.Path.ToLower () ; newUrl de corde du
= strThisUrl.Replace ( » /Default.aspx ", ""). Remplacer (« / », "") ;
si (lecteur. && nommé de « lien » de == newUrl de == (de reader.GetAttribute (« vanityurl »)))
{strRedirectLink de
= reader.GetAttribute (« redirecturl ») ;
Response.Redirect (strRedirectLink) ; coupure du
du

} ; les idées du

Any du
du

du
}}} sur la façon dont obtenir ceci pour fonctionner est considérablement appreciated.
class= de

Réponse : Dossier de xml de lecture dans global.asax pour réorienter l'URL de vanité pour corriger la page

Ce que vous voulez s'appelle une canalisation.  Voici un cours d'instruction :
 http://www.nerdymusings.com/LPMArticle.asp?ID=12


Je prendrais votre code qui analyse le dossier de XML et fais à cela une classe autonome.  Et stocker alors les valeurs du XML analysant comme propriétés de la classe.

Que la manière la classe de canalisation juste doit faire ceci :


1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
Application_BeginRequest vide privé (source d'objet, EventArgs e)
{
      Source d'oApp= de HttpApplication (HttpApplication) ;
      strRequestUri de corde = oApp.Request.Url.AbsoluteUri.ToLower () ;

      =new RedirectMap de carte de RedirectMap () ;

      si (map.IsMapped (strRequestUri))
          oApp.Response.Redirect (map.GetRedirectUri (strRequestUri));
}
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us