我正在使用传统的 Asp.Net 网站,我在其中使用 System.Web.Routing 模块。我想找到我知道路由http模块是否加载的方式?
问问题
162 次
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 为你的模块的名称,并验证它不为空。如果你想做一些额外的检查,你也可以检查对象的类型(未显示)。
// 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 回答