02 2022 档案
摘要:1、注册抽象和普通类 2、注册具体实例 3、注册一段业务逻辑 4、注册泛型 5、注册程序集
阅读全文
摘要:1、Nuget 引入 Autufac 程序包 2、new 容器创建者 3、注册配置抽象类和实体类的关系 4、Build 创建容器实例 5、基于容器实例创建对象实例
阅读全文
摘要:1、Program.cs 注册依赖的接口类和实体类 2、构造函数注入支持
阅读全文
摘要:1、瞬时生命周期 AddTransient 每一次创建都是一个全新的实例 2、单例生命周期 AddSingleton 同一个类型,创建出来的是统一实例 3、作用域生命周期 AddScoped 同一个 ServicePorvider 创建出来的也是同一个实例 -- 不同 ServicePorvider
阅读全文
摘要:DI—Dependency Injection,即“依赖注入”:组件之间依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入到组件之中。依赖注入的目的并非为软件系统带来更多功能,而是为了提升组件重用的频率,并为系统搭建一个灵活、可扩展的平台。通过依赖注入机制,我们只需要通过简单的配
阅读全文
摘要:1、创建接口 2、创建实体类 3、IOC 容器配置依赖注入
阅读全文
摘要:1、全局注册 2、控制器注册 3、Action 方法注册 4、执行顺序 5 、通过在注册方法添加(Order = 数字) 数字越小越优先调整顺序,但不能跳过全局注册的类
阅读全文
摘要:1、定义 IUserService 接口接收传入数据 2、定义 UserService 类实现 IUserService 接口 3、定义 QQEmailRequirement 类实现 IAuthorizationRequirement 接口(空接口) 4、定义 QQHandler 类继承 Autho
阅读全文
摘要:1、之前所谓的角色授权其实就是一个特殊的策略授权 - 角色授权 就是根据用户信息中的角色来判断 2、定义策略 - Program.cs 配置 - 多种委托关联验证 - 控制器 IActionResult 注入配置
阅读全文
摘要:1、Your job takes needlework into the region of folk art 你的工作将针线活(needlework)带入民间(folk)艺术(art)领域(region) 2、It is not company policy to dispense with ou
阅读全文
摘要:1、标记多个 Authorize - 绑定不同的 Role: 当前用户必须是同时包含这里指定的多个 role 的角色,同时满足,才能授权访问 - 正常访问 - 无法访问 2、标记一个 Authorize - 逗号分割多个 Role 信息,多个角色只要有一个角色是满足的就可以访问当前的方法 - 多个角
阅读全文
摘要:1、AuthorizeAttribute 配置 - AuthenticationSchemes - 在授权的时侯,必须要先鉴权 - 先找出用户信息,如果找到用户信息,说明用户登陆过 - 在一些业务需求中,还需要作其他判断,不仅要用户信息,还需要符合一些特定条件,才能授权访问相关资源 - 可以在某个方
阅读全文
摘要:1、使用中间件 - app.UseAuthentication(); //鉴权 鉴定验证权限 - app.UseAuthorization(): //授权 验证通过则授权 2、配置授权过程 3、授权生效 [AuthorizeAttribute] public IActionResult Index(
阅读全文
摘要:1、中间件支持 2、综合支持可以捕捉到所有的异常 3、ExceptionFilter + 中间件 - 可以处理所有的异常
阅读全文
摘要:1、Action 出现没有处理的异常 - 正常捕捉 context.ExceptionHandle = true 2、Action 出现已经处理的异常 - 无法捕捉,因为已处理 context.ExceptionHandle = false 3、Service 层的异常 - 正常捕捉,异常从下往上抛
阅读全文
摘要:1、异常的标准处理方式 - 定义内部 IModelMetadataProvider 属性 - 构造函数注册 IModelMetadataProvider 属性 - 封装判断是否 Ajax 请求的方法 2、分情况返回不同数据 - 返回 JSON 数据 - 返回 HTML 页面
阅读全文
摘要:1、包含了 IExceptionFilter 和 IAsyncExceptionFilter 的多种扩展 2、开始扩展定制 - 同步方法 - 异步方法(原版) - 异步方法(改动) 3、同步异常的执行特点 - 如果实现 ActionFilterAttribute 抽象父类,在执行的时侯,只会执行异步
阅读全文
摘要:单个 Action 注册是对于某一个 Action 生效 但是控制器、全局注册都是生效一大片!那么在这样生效一部分的时侯,总存在误伤 如果希望在全局或者控制器注册后,其中有部分 Action 不生效呢? 通过匿名支持 系统提供了 AllowAnonymousAttribute,有部分可以使用,有部分
阅读全文
摘要:1、仅对当前方法生效 2、控制器(类)注册:对当前控制器下的所有 Action 都生效 3、全局注册:对于项目中的所有方法都生效
阅读全文
摘要:1、开始扩展 AlwaysRunResultFilter 2、新增类,继承 Attribute、实现 IAlwaysRunResultFilter 接口 3、实现方法 4、注册到 Action 上 5、测试
阅读全文
摘要:1、框架提供的 ActionFilter 和 ResultFilter 的多种实现 2、开始扩展定制 3、特点区别 4、同步异常的执行特点 - 如果实现 ActionFilterAttribute 抽象父类,在执行方法时,只会执行异步版本的方法 - 在源码中程序直接作了判断,如果有异步方法,同步方法
阅读全文