2010-10-19 44 views
1

HEllo. J'ai besoin de remplacer les doubles barres obliques en une seule barre oblique. Je prévois de le faire dans l'événement Global.asax Application_BeginRequest. Est-ce suffisant? ou mieux faire un module http? Merci.pour réécrire l'URL dans Global.asax, ASP.NET


UPD

Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs) 

    ' Fires at the beginning of each request 
    Thread.CurrentThread.CurrentCulture = New Globalization.CultureInfo(AppSettings.UsedCulture) 
    Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture 


     Dim retUrl As String 
     .... 
     some code 
     .... 

     'Dim app As HttpApplication = CType(sender, HttpApplication) 
     'app.Context.RewritePath(retUrl) 

     Dim myContext As HttpContext = HttpContext.Current 
     'Rewrite the internal path    
     myContext.RewritePath(retUrl) 

    End If 

J'utilise .Net 1.1. Et il doit être sur .Net 1.1 RewritePath ne réécrit pas URL.Pourquoi? Ayant décidé d'effectuer une redirection d'addition dans Sub Application_BeginRequest avec une nouvelle URL de réécriture.

+0

Il y a un excellent article du blog scottgu sur la réécriture d'URL, j'espère que ça aide: http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp- net.aspx – zgorawski

+0

Merci. Je vais essayer. – Sergii

Répondre

0

Si vous utilisez IIS 7.0 (et plus récent), vous pouvez utiliser le IIS UrlRewrite module. Nous l'utilisons depuis un moment et nous n'avons aucune plainte à formuler.

+0

nous utilisons IIS 6.0, Merci pour le lien. – Sergii