Asp.net mvc url路由。工作原理

Asp.net mvc url路由。工作原理,asp.net,asp.net-mvc,Asp.net,Asp.net Mvc,上次我调试应用程序时,谁是用mvc编写的 我在globals.ascx.cs中对路由设置了一个断点 当我的断点转到正确的路由时,我看到了这一点。该页面将显示在浏览器中,但我的断点将检查globals.ascx中记录的所有其他路由 之后,当我刷新浏览器时,路由是工作的,但断点不是调试的 表示url路由在asp.net MVC中的工作方式 我是否正确地说“当您请求服务器时,所有url路由都加载到缓存中,如果您再次请求,则从缓存中加载。”您在global.asax.cs文件中注册的路由仅在应用程序启动

上次我调试应用程序时,谁是用mvc编写的

我在globals.ascx.cs中对路由设置了一个断点

当我的断点转到正确的路由时,我看到了这一点。该页面将显示在浏览器中,但我的断点将检查globals.ascx中记录的所有其他路由

之后,当我刷新浏览器时,路由是工作的,但断点不是调试的

表示url路由在asp.net MVC中的工作方式


我是否正确地说“
当您请求服务器时,所有url路由都加载到缓存中,如果您再次请求,则从缓存中加载。”

您在global.asax.cs文件中注册的路由仅在应用程序启动时初始化。这部分执行与传入请求无关,只与传入请求将导致启动未启动的应用程序这一事实有关

后续请求将命中已经运行的应用程序(假设它没有被回收或停止),因此它不需要重新初始化路由


如果您想确定用于服务请求的路由,这里不是断点的位置(对不起,我不确定它是什么)。

您突出显示的语句非常正确。我会说,当应用程序启动时,它会加载到HTTPContext中,并启动请求的b/c,尽管路由是在不知道特定请求的情况下加载的;具体请求的实际路由将在稍后进行