0

System.Web.Routingモジュールを使用している従来のAsp.NetWebサイトを使用しています。ルーティングhttpモジュールがロードされているかどうかを知る方法を知りたいですか?

4

1 に答える 1

4

知っておく必要があるのは、web.configファイルで構成されているモジュールの名前だけです。たとえば、このスニペットからわかるように、私の名前は「UrlRoutingModule」です(StackOverflow用にフォーマットされています)。

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

それができたら、アプリケーションのModulesプロパティをチェックするだけです(モジュール名のタイプはHttpModuleCollectionであり、nullでないことを確認します。追加のチェックを行う場合は、オブジェクトのタイプもチェックできます。 (表示されていません)。

// From Global.asax.cs
protected void Application_Start(object sender, EventArgs e)
{
    if (Modules.AllKeys.Contains("UrlRoutingModules") 
        && Modules["UrlRoutingModule"] != null)
    {
        // the module is loaded
    }
}
于 2009-08-23T05:28:48.490 に答える