Sous Cassini, Application_BeginRequest exécute tous les fichiers. Sous IIS, il ne fonctionne que pour les fichiers avec les gestionnaires gérés, tels que les fichiers * .aspx.
pour le cas général, vous devrez créer votre propre HttpModule Voici un exemple (basé hors d'un semblable de mon livre: Ultra-Fast ASP.NET):.
using System;
using System.Web;
namespace Samples
{
public class RewriteExample : IHttpModule
{
public void Init(HttpApplication context)
{
context.BeginRequest += OnBeginRequest;
}
void OnBeginRequest(object sender, EventArgs e)
{
HttpApplication application = (HttpApplication)source;
HttpContext context = application.Context;
// re-write URL here...
}
public void Dispose()
{
}
}
}
Alors inscrivez-vous dans web.config (ce qui est pour IIS, l'utilisation de Cassini est légèrement différente):
<system.webServer>
<modules>
. . .
<add name="RewriteExample" type="Samples.RewriteExample" />
</modules>
</system.webServer>
Comment créer un HttpModule? Pourriez-vous donner un exemple s'il vous plaît? merci – user220994
Exemple ajouté ... – RickNZ