Pregunta

Estoy utilizando el sitio web tradicional Asp.Net en el que estoy usando el módulo System.Web.Routing. Quiero encontrar la manera en que sé que los módulos HTTP de enrutamiento se carga o no?

¿Fue útil?

Solución

Todo lo que necesita saber es el nombre del módulo como se haya configurado en el archivo web.config por ejemplo, la mina se denomina: "UrlRoutingModule", como se puede ver en este fragmento aquí (formato para stackoverflow):

    <add name="UrlRoutingModule" 
         type="System.Web.Routing.UrlRoutingModule, System.Web.Routing,
         Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

Una vez conseguido eso, todo lo que tiene que hacer es comprobar la propiedad módulos de la aplicación (que es de tipo HttpModuleCollection el nombre de su módulo y verificar que no es nulo. Si desea hacer alguna de las comprobaciones se puede comprobar el tipo de el objeto también (no mostrado).

// From Global.asax.cs
protected void Application_Start(object sender, EventArgs e)
{
    if (Modules.AllKeys.Contains("UrlRoutingModules") 
        && Modules["UrlRoutingModule"] != null)
    {
        // the module is loaded
    }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top