当前位置: 首页 > news >正文

有什么网站可以做宣传信阳seo公司

有什么网站可以做宣传,信阳seo公司,宁波网站建设公司哪个好,长沙景点必去1.AOP 面向切面编程 概念 AOP(Aspect-Oriented Programming,面向切面编程)是一种编程范式,旨在通过预定义的模式(即“切面”)对程序的横切关注点进行模块化。横切关注点是一个在多个应用模块中出现的概念,例如日志记录、事务管理、安全检查等。AOP允许开发者定义“切面”…

1.AOP 面向切面编程 概念

        AOP(Aspect-Oriented Programming,面向切面编程)是一种编程范式,旨在通过预定义的模式(即“切面”)对程序的横切关注点进行模块化。横切关注点是一个在多个应用模块中出现的概念,例如日志记录、事务管理、安全检查等。AOP允许开发者定义“切面”来跨方法、跨类甚至跨应用来操作这些关注点,从而提供了一种从业务逻辑代码中分离出横切关注点的机制。

        AOP的核心概念包括连接点(Join Point)、切点(Pointcut)、通知(Advice)、切面(Aspect)等。连接点是在程序执行过程中的一些特定点,如方法的调用或特定异常被抛出。切点则定义了在哪些连接点应用通知的规则。通知是切面的实际行为,它描述了当与切点匹配的方法被调用时应执行的操作。切面则是一个封装了通知和切点的模块,它定义了在何处(切点)以及怎样(通知)进行横切。

AOP的主要优势在于:

  • 降低模块间的耦合度:通过将横切关注点从业务逻辑中分离出来,AOP有助于减少代码之间的依赖关系,使得业务逻辑更加清晰和可维护。
  • 提高代码的可重用性:切面可以在不同的应用或模块中重复使用,从而提高了代码的可重用性。
  • 增强系统的可扩展性:当需要添加新的横切关注点时,只需要定义新的切面和通知即可,而无需修改现有的业务逻辑代码。

AOP提供了一种灵活且强大的方式来处理程序中的横切关注点,使得开发者能够更加专注于业务逻辑的实现,同时提高了代码的可维护性、可扩展性和可读性。

比如说异常处理,在每一个 Ation 中用 try ... catch 捕获异常,这样就存在大量的重复代码。

普通方式解决:
大量的重复代码
大量的测试工作
违背了开闭原则

面向切面编程AOP
Aspect Oriented Programming 在不修改之前的代码为基础,可以动态的增加业务逻辑:
如果可以在已经成型的程序中,如果可以动态在某些行为之前增加点内容;在某些行为之后增加点内容----之前已经开发好的内容保持不变;

2.ASP.NET Core中的AOP--Filter

AuthorizeAttribute

权限验证


IResourceFilter 扩展

常见作用:资源缓存,ASP.NET Core6提供的是接口 IResourceFilter。

例子:

    public class CustomResourceFilterAttribute : Attribute, IResourceFilter{/// <summary>/// 在资源之前/// </summary>/// <param name="context"></param>public void OnResourceExecuting(ResourceExecutingContext context){Console.WriteLine("CustomResourceFilterAttribute.OnResourceExecuting");}/// <summary>/// 在资源之后/// </summary>/// <param name="context"></param>public void OnResourceExecuted(ResourceExecutedContext context){Console.WriteLine("CustomResourceFilterAttribute.OnResourceExecuted");}}
        [CustomResourceFilter]public IActionResult Index(){return View();}

执行顺序:

  • a.CustomResourceFilterAttribute.0nResourceExecuting
  • b.控制器的构造函数实例化控制器
  • c.执行Action方法
  • d.CustomResourceFilterAttribute.0nResourceExecuted

IResourceFilter 场景应用

使用缓存
    public class ThirdController : Controller{public ThirdController(){}[CustomResourceFilter]public IActionResult Index(){
http://www.yidumall.com/news/78771.html

相关文章:

  • 松江网站建设重庆seo技术教程博客
  • 网站使用什么数据库石家庄网站建设方案
  • 东昌网站建设重庆店铺整站优化
  • 传奇做网站空间推广普通话海报
  • 做网站用广告赚钱过时了百度站长联盟
  • 网站301的作用百度账号购买1元40个
  • asp.net旅游网站管理系统代码北京seo关键词
  • 热门视频素材网站优化seo培训
  • 动态网站开发考证seo引擎优化专员
  • 汕头网站优化福州seo视频
  • 铜山徐州网站开发西点培训学校
  • 淘客网站怎么做啊上海推广外包
  • 做网站生意旁网站优化课程培训
  • 有哪些做网站的公司推广软件的app
  • 公司网站用模板做创新驱动发展战略
  • 网站美化的目标鸿星尔克网络营销案例分析
  • 武警部门建设网站的好处电商平台推广公司
  • 网站建设任务书百度浏览器官方网站
  • 毕业设计做视频网站好做么百度怎么做网站
  • dedecms织梦搬家公司网站模板网页怎么做出来的
  • 建网站找兴田德润发广告推广平台
  • 上海网站建设案例百度推广服务费3000元
  • 温州高端网站建设公司百度网盘搜索引擎入口
  • pc端网站开发公司网站建设公司好
  • 直播网站开发计划书邵阳做网站的公司
  • 网站logo多大抖音推广引流
  • 网站地图怎么生成seowhy教研室
  • 从网页上直接下载视频郑州专业seo首选
  • 南京网站建设 雷站内推广
  • 简述新建站点的步骤武汉企业网站推广