作者小头像 Lv.3
309 成长值

个人介绍

这个人很懒,什么都没有留下

感兴趣或擅长的领域

暂无数据
个人勋章
  • 活跃之星
成长雷达
60
219
0
30
0

个人资料

个人介绍

这个人很懒,什么都没有留下

感兴趣或擅长的领域

暂无数据

达成规则

他的回复:
华为云账号:RabbitCloud微信昵称:云之山 读书笔记4       1. 如何做一个好架构           三个不同的架构设计角度:                      维度不同,架构也不同。           软件架构即软件系统的顶层设计结构:系统是由无数个子系统组成,子系统由无数个模块构建而成,模块由无数个组件组合而成。           架构规则:架构是顶层设计,框架是面向编程或配置的半成品,组件是技术维度上的复用,模块是业务维度上职责的划分,系统是相互协同可运行的实体。       2. 泛型仓储的最佳实践落地           优势:使代码更清晰,更易于重用和维护,允许创建松耦合的系统。           ASP.NET Core提供了依赖注入,通过它可以创建松耦合的系统,而C#提供了泛型仓储,可以实现对参数、方法、服务的复用,将两者结合起来,就可以使系统充分松耦合。           IRepository.cs接口文件,定义了所有仓储的约定,而RepositoryBase.cs实现默认仓储的通用功能,用于所有领域模型。           Web服务器的异步编程模式:async关键字、Task返回值、await关键字。       3. 依赖注入服务注册           根据业务定义具体的IRepository接口,并通过继承RepositoryBase实现具体的仓储类,将接口和仓储类在Startup类中进行注册,并在相关的Controller类的构造方法中进行依赖注入。       4. 如何在ASP.NET Core中处理并发冲突           并发冲突                      悲观并发又称为悲观锁,具体操作是从数据库中读取一条数据之前,将它锁定为只读或更新状态。           乐观并发又称为乐观锁,允许多个进程或用户独立进行更改而不产生数据库锁,以节省开销。乐观锁每次读取数据时默认不加锁,只有更新时才去判断当前数据有没有更新。       5. 使用EF Core调用原生Sql语句           使用DbSet.FromSql返回实体类型的查询方法;对于非查询命令使用Database.ExecuteSqlComma;返回类型是视图模型,可以使用EF Core的ADO.NET来进行数据库连接。
他的回复:
华为云账号:RabbitCloud微信昵称:云之山 读书笔记3       1. ASP.NET Core 身份(Identity)认证介绍           一个会员身份系统,是一个完善的、全面的、庞大的框架;           创建、查询、更改、删除账号信息;           验证和授权;           密码重置;           SMS双重身份认证;           支持扩展登陆。       2. 添加ASP.NET Core Identity服务           步骤1:让DbContext类继承IdentityDbContext类           步骤2:配置ASP.NET Core Identity服务           步骤3:添加认证中间件       3. ASP.NET Core中的授权           身份验证是用于识别用户的身份,而授权是用于识别用户可以做什么和不能做什么的过程,ASP.NET Core MVC中的授权通过Authorize属性标签控制。       4. 角色管理与用户扩展           用户扩展实现通过扩展内置的IdentityUser类,在AspNetUsers表中保存自定义数据,用户管理使用UserManager类。           角色管理使用RoleManager类,将IdentityRole类指定为RoleManager的泛型参数,通过依赖注入,RoleManager可供任何控制器或视图使用。       5. 角色授权是指可以对控制器(Controller)或控制器内的操作方法应用基于角色的授权检查。       RBAC:Role-Based Access Control,基于角色的访问控制       CBAC:Context-Based Access Control,基于上下文的访问控制
他的回复:
华为云账号:RabbitCloud微信昵称:云之山 读书笔记2      1. ASP.NET Core MVC的设计模式          MVC是一种设计模式,包括3个基本部分:模型(Model)、视图(View)和控制器(Controller),MVC设计模式通常用于三层架构中的用户展现层。           模型(Model):包含一组数据的类和管理该数据的逻辑信息。           视图(View):包含显示逻辑,用于显示Controller提供给它的模型中的数据。           控制器(Controller):处理Http请求,调用模型,并选择一个视图呈现该模型。       2. 在ASP.NET Core项目中启用MVC           步骤1:在Startup类中的ConfigureServices方法中将MVC服务依赖注入容器中。               AddMvcCore()方法只会添加最核心的MVC服务。               AddMvc()方法添加了所有必需的MVC服务。               AddMvc()方法在内部调用AddMvcCore()方法。           步骤2:在Configure()方法中,调用以下中间件:UseMvcWithDefaultRoute() 或UseMvc()。       3. ASP.NET Core中的依赖注入           AddSingleton()方法:在整个应用程序生命周期创建服务的单个实例。           AddTransient()方法:每次请求服务都会创建一个新的服务实例。           AddScoped()方法:在一个Scope范围内,例如在一次HTTP请求中,创建服务的单个实例。           依赖注入的亮点:降低耦合、代码易于测试、提供了面向对象编程的机制。       4. ASP.NET Core中的模型绑定           模型绑定是将HTTP请求中的数据映射到控制器操作方法上对应的参数。           操作方法中的参数可以是简单类型,也可以是复杂类型。           模型绑定简化了大量的自定义数据映射代码。       5. ASP.NET Core中的模型验证           步骤1:在属性上添加验证属性。           步骤2:使用ModelState.IsValid属性验证属性有效性。           步骤3:使用asp-validation-for和asp-validation-summary标签TagHelper来显示错误信息。       6. Entity Framework Core的使用           特点:ORM框架、轻量级可扩展并开源的软件、跨平台、微软官方推荐。           使用方式:Code First、Database First。           EF Core通过数据库提供程序来支持多种数据库。          仓储模式是的DAL的抽象表示,隐藏了底层的数据操作,对数据的详细操作逻辑都包含在对应的仓储中。