Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 控制器上的ExecuteCore/Execute/Initialize之间有哪些不同?_C#_Asp.net_Asp.net Mvc - Fatal编程技术网

C# 控制器上的ExecuteCore/Execute/Initialize之间有哪些不同?

C# 控制器上的ExecuteCore/Execute/Initialize之间有哪些不同?,c#,asp.net,asp.net-mvc,C#,Asp.net,Asp.net Mvc,在ASP.NET中,MVC包含三种方法: 我找不到很多关于这些的信息。只是建议使用,而不是。有人知道这些方法的目的吗?在哪种情况下,应根据良好实践使用它们?执行方法是来自IController接口的方法,所有控制器都拥有该方法。在默认实现(ControllerBase)中,Execute方法首先调用Initialize方法,然后调用ExecuteCore方法。Initialize方法是上下文可用的地方。这是管道执行中最早的方法,您可以在其中访问与HttpContext相关的内容。例如,

在ASP.NET中,MVC包含三种方法:


我找不到很多关于这些的信息。只是建议使用,而不是。有人知道这些方法的目的吗?在哪种情况下,应根据良好实践使用它们?

执行方法是来自
IController
接口的方法,所有控制器都拥有该方法。在默认实现(
ControllerBase
)中,Execute方法首先调用
Initialize
方法,然后调用
ExecuteCore
方法。Initialize方法是上下文可用的地方。这是管道执行中最早的方法,您可以在其中访问与HttpContext相关的内容。例如,如果您试图在控制器的构造函数中访问它,您将得到一个NRE。
ExecuteCore
方法负责加载TempData,查找并执行正确的操作以执行给定的
action
路由数据值,并最终保存TempData。

因此,如果我得到正确的
execute
将管理所有其他方法。”初始化“设置
ControllerContext
ExecuteCore
设置临时数据”。我应该先避免过度劳累。。可以改变第二个,因为我想建立新的文化等等。。如果我想访问临时数据,请使用第三个。如果我想预定义一些信息(从会话中获取数据等),我应该使用
OnActionExecuting
。最后,对于一些最终确定操作,我应该使用
OnActionExecuted
。谢谢