Asp.net mvc ASP.NET MVC控制器工厂生命周期
Asp.net mvc ASP.NET MVC控制器工厂生命周期,asp.net-mvc,controller,Asp.net Mvc,Controller,DefaultControllerFactory包含三种不同的方法: GetControllerInstance CreateController GetControllerType 每个方法在请求生存期内何时执行?我见过自定义控制器工厂,其中一个方法被重写和实现,但我似乎找不到每个方法的执行路径的详细信息。CreateController被调用。 它首先调用GetControllerType来确定控制器的类型,然后将该类型传递给GetControllerInstance 因为(通常)重写Get
DefaultControllerFactory
包含三种不同的方法:
GetControllerInstance
CreateController
GetControllerType
每个方法在请求生存期内何时执行?我见过自定义控制器工厂,其中一个方法被重写和实现,但我似乎找不到每个方法的执行路径的详细信息。
CreateController
被调用。它首先调用
GetControllerType
来确定控制器的类型,然后将该类型传递给GetControllerInstance
因为(通常)重写
GetControllerInstance
(以便选择类型的逻辑保持不变)更容易(而且足够频繁),所以您经常会看到这种情况发生。对于MVC3更新,方法按以下顺序调用
GetControllerType
首先被调用,然后被调用两次
GetControllerType
GetControllerSessionBehavior
CreateController
GetControllerType
CreateControllerInstance
ReleaseController