首页 > Web开发 > 详细

Net Core 页面的生命周期 + OnActionExecuting

时间:2020-05-12 19:00:11      阅读:131      评论:0      收藏:0      [点我收藏+]

十年河东,十年河西,莫欺少年穷

学无止境,精益求精

NetCore页面的生命周期如下图:

技术分享图片

 

具体代码执行顺序如下:

控制器基类

技术分享图片
    public class MoviesController : BaseController
    {
        private readonly MvcMovieContext _context;

        /// <summary>
        /// 第2步执行基类的构造函数
        /// </summary>
        /// <param name="context"></param>
        public MoviesController(MvcMovieContext context)
        {
            _context = context;
        }

        /// <summary>
        /// 第5步执行Action方法
        /// </summary>
        /// <returns></returns>
        public async Task<IActionResult> Index()
        {
            return View(await _context.Movie.ToListAsync());
        }
    }
View Code

父控制器类

技术分享图片
    public class BaseController : Controller
    {
        /// <summary>
        /// 第1步 执行父类控制器构造函数
        /// </summary>
        public BaseController()
        {

        }
        /// <summary>
        /// 第3步 执行父类的异步方法  异步方法  似乎可以和OnActionExecuting同时执行
        /// </summary>
        /// <param name="context"></param>
        /// <param name="next"></param>
        /// <returns></returns>
        public override Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next)
        {
            return base.OnActionExecutionAsync(context, next);
        }

        /// <summary>
        /// 第4步 执行OnActionExecuting方法
        /// </summary>
        /// <param name="context"></param>
        public override void OnActionExecuting(ActionExecutingContext context)
        {
            base.OnActionExecuting(context);
        }

        /// <summary>
        /// 第6步 Aciton执行完毕后 执行 OnActionExecuted
        /// </summary>
        /// <param name="context"></param>
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            base.OnActionExecuted(context);
        }

        
    }
View Code

以上便是NetCore 子父控制器执行顺序。

本人初学NetCore,我认为基础决定上层建筑,要想走的更远,更高,就必须一丝不苟的学习NetCore基础。谢谢。

@天才卧龙的博客

Net Core 页面的生命周期 + OnActionExecuting

原文:https://www.cnblogs.com/chenwolong/p/OnActionExecuting.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!