asp.net - net - ¿Cómo se determina el orden de ejecución de HttpModules?
razor if (2)
De acuerdo con esta publicación en el foro , HttpModules se ejecutan en el orden en el que se registraron. Esto tiene sentido para mí, porque de lo contrario las directivas <clear>
y <remove>
tampoco funcionarían como se esperaba, por ejemplo, cuando se usa así:
<httpModules>
<clear/>
<add... />
</httpModules>
Supongamos que FirstModule
y SecondModule
manejan el evento Application_BeginRequest
. ¿Se ejecutará en el orden definido en web.config?
<httpModules>
<add type="MyApp.FirstModule, MyApp" name="FirstModule"/>
<add type="MyApp.SecondModule, MyApp" name="SecondModule"/>
<add type="OtherApp.OtherModule, OtherApp" name="OtherModule"/>
</httpModules>
¿Hay otras formas en que se puede especificar el pedido?
No creo que pueda garantizar o especificar un pedido en el que se ejecutarán los httpm. Si SecondModule depende de FirstModule, puede ser mejor combinar su funcionalidad en 1 httpmodule.