2011-10-05 82 views
1

正如问题所述,用asp mvc是为每个请求重置RouteCollection对象...我认为它是在应用程序级别上设置的,而不是每个请求。AspMvc RouteCollections是否重置每个请求?

== ==编辑

为了让更多的背景下,为什么我问这个问题。

我目前有一个web应用程序,它有2个默认路由,并使用MEF从插件动态加载其他路由,现在我想知道为什么我的路由没有出现在路由表调试器中,并且在调试每个请求时调用当前路由表的插件,但它只有默认路由。

所以每次请求它出现是发送插件新的路由表只有2个缺省路由,它然后将让说5条航线总数达到了7,然而,然后对次刷新它背下来到2.

所以我有点困惑,为什么它不断地看似重置路线。

+0

路由表不重置。是什么让你认为它是?我认为你需要更清楚你在做什么。如果*被重置,则在第一次请求后没有任何工作。 –

+0

是的,它会重新注册每个请求的路线,那就是我想知道的,因为我不认为它是。将用我的方案更新主要问题。 – Grofit

回答

1

路由注册通常在Application_Start中完成,其中只运行一次。他们可能被清除的东西像RouteTable.Routes.Clear(),但它听起来通常不会被重置。

这就是说,我对MEF一无所知,所以有可能通过它注册路由的行为与通常在模板创建的MVC站点中的Global.asax中执行的行为不同。

+0

我没有在任何地方调用RouteTable.Routes.Clear(),所以我很困惑它为什么不起作用。 – Grofit

+0

routedebugger *可能会在线路某处清除某些信息,但如果没有这些信息,我无法确定哪些线路正在被暴露。 – Grofit

相关问题