ABP VNext学习日记7
1.services.AddApplication<AppModule>()
解析:添加了所有AppModule模块中定义的全部服务。
2.app.InitializeApplication()
解析:完成初始化并启动应用程序。
3.Autofac依赖注入框架
解析:提供了属性注入和方法拦截等高级功能,这些功能是ABP执行高级应用程序框架功能所必需的。
4.ABP解决方案项目及依赖关系
解析:
5.Domain项目
解析:解决方案的领域层,它主要包含实体、集合根、领域服务、值类型、仓储接口和解决方案的其它领域对象。
6.DbMigrator项目
解析:
[1]必要时创建数据库[没有数据库时]
[2]应用未迁移的数据库迁移
[3]初始化种子数据[当需要时]
7.HttpApi.Client.ConsoleTestApp项目
解析:它是一个用于演示客户端代理用法的控制台应用程序。
8.Web项目
解析:包含应用程序的用户界面。如果使用ASP.NETCore MVC UI,它包括Razor页面、javascript文件、样式文件、图片等。
9.Test项目
解析:
[1]Domain.Tests:用于测试领域层
[2]Application.Tests:用于测试应用层
[3]EntityFrameworkCore.Tests:用于测试EF Core配置与自定义仓储
[4]Web.Tests:用于测试UI[适用于ASP.NET Core MVC UI]
[5]TestBase:所有测试项目的基础[共享]项目
10.HttpApi.Client.ConsoleTestApp项目
解析:它是一个控制台应用程序,不是自动化测试项目,它用于演示.Net应用程序中HTTP API的用法。
说明:测试项目是用于做集成测试。
11.IdentityServer项目
解析:用于其它项目的身份验证服务器。Web项目使用OpenId Connect身份验证从IdentityServer获取当前用户的身份和访问令牌,然后使用访问令牌调用HTTP API服务器。HTTP API服务器使用bearer token从访问令牌获取声明授权当前用户。
12.HttpApi.Host项目
解析:该项目是一个承载解决方案API的应用程序,它有自己的appsettings.json文件。
13.Home Module
解析:Home模块是一个可延迟加载的模块,它加载应用程序的根地址。
14.HttpApi.Host
解析:HttpApi.Host托管模块的HTTP API,它有自己的appsettings.json包含数据库连接字符串和其它配置。
15.Web.Host
解析:Web.Host托管模块的UI,它包含appsettings.json文件,但是其中没有数据库连接字符串,因为它不需要连接到数据库,它主要调用远程API服务器和身份认证服务器。
16.ICrudAppService常见CRUD方法
解析:GetAsync、GetListAsync、CreateAsync、UpdateAsync和DeleteAsync。
17.生成代理
解析:ABP CLI提供了generate-proxy命令为服务HTTP API生成客户端代理简化客户端使用服务的成本。
18.固有的注册类型
解析:
[1]模块类注册为singleton
[2]MVC控制器[继承Controller或AbpController]被注册为transient
[3]MVC页面模型[继承PageModel或AbpPageModel]被注册为transient
[4]MVC视图组件[继承ViewComponent或AbpViewComponent]被注册为transient
[5]应用程序服务[实现IApplicationService接口或继承ApplicationService类]注册为transient
[6]存储库[实现IRepository接口]注册为transient
[7]域服务[实现IDomainService接口]注册为transient
19.Dependency特性
解析:
[1]Lifetime:注册的生命周期包括Singleton、Transient或Scoped
[2]TryRegister:设置true则只注册以前未注册的服务。使用IServiceCollection的TryAdd…扩展方法
[3]ReplaceServices:设置true则替换之前已经注册过的服务。使用IServiceCollection的Replace扩展方法
20.ABP本地化系统
解析:Install-Package Volo.Abp.Localization
21.测试项目类库
解析:
[1]xunit:作为主测试框架
[2]Shoudly:作为断言库
[3]NSubstitute:作为模拟库
22.ABP验证基础设施
解析:abp add-package Volo.Abp.FluentValidation
23.Hangfire后台作业管理
解析:abp add-package Volo.Abp.BackgroundJobs.HangFire
24.Quartz后台作业管理
解析:abp add-package Volo.Abp.BackgroundJobs.Quartz
25.Quartz后台工作者管理
解析:abp add-package Volo.Abp.BackgroundWorkers.Quartz
ABP VNext学习日记7相关推荐
- ABP VNext学习日记17
1.public static Assembly GetExecutingAssembly() 解析:得到包含的代码正在执行的程序集. 2.public interface IHostedServic ...
- ABP VNext学习日记20
1.AbpApiControllerActivator 解析:实现了IHttpControllerActivator接口,根据controller的类型生成指定的controller. 2.AbpDy ...
- ABP VNext学习日记15
1.Polly服务容错模式 解析: [1]错误处理fault handling:重试.熔断.回退 [2]弹性应变resilience:超时.舱壁.缓存 2.Polly错误处理步骤 解析: [1]定义条 ...
- ABP VNext学习日记3
1.ABP中的DTO 解析:在ABP的设计中,有两种不同类型的DTO,分别是用于新增.修改.删除的Input DTO,和用于查询的Output DTO. 2.Unit of Work 解析:工作单元与 ...
- ABP VNext学习日记21
1.public class PagedResultDto<T> : ListResultDto<T>, IPagedResult<T> 解析: public lo ...
- ABP VNext学习日记30
1.IDS4中的/connect/token接口 解析:固定写法,不是开发自定义的,只需要直接去使用就行了,注意调用方式时的输入参数. 2.RequestPasswordTokenAsync 解析: ...
- ABP VNext学习日记18
1.IAuthorizationService 解析:IAuthorizationService具有两个AuthorizeAsync方法重载:一个接受资源和策略名称,另一个接受资源并提供要评估的要求的 ...
- ABP VNext学习日记22
1.PreConfigureServices和PostConfigureServices 解析:AbpModule类还定义了PreConfigureServices和PostConfigureServ ...
- ABP VNext学习日记1
1.安装和更新ABP CLI 解析: dotnet tool install -g Volo.Abp.Cli dotnet tool update -g Volo.Abp.Cli 2.模块拆分原则 解 ...
- ABP VNext学习日记14
1.Abp.AbpBootstrapper 解析:这是一个主类,它负责开始全部的ABP系统. 2.Abp.Dependency.IocManager 解析:这个类用于直接执行依赖注入任务. 3.voi ...
最新文章
- Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现
- 裸centos安装PCRE时报错解决
- 系统架构图怎么画_基于ROS的移动机器人上层系统架构分析
- X86汇编——简易通讯录
- MySQL 5.7安装(linux)
- python调用库实现返回ping的时延_python网络作业:使用python的socket库实现ICMP协议的ping...
- 记一次 .NET 某HIS系统后端服务 内存泄漏分析
- php过程函数,php流程控制和函数
- 经验 | 如何提升目标检测NMS精度
- 10.凤凰架构:构建可靠的大型分布式系统 --- 可观测性
- 多元函数的牛顿迭代法
- 海康监控设备如何修改IP地址
- Linux中安装JDK并配置环境变量
- 文本数据挖掘一般步骤
- M-Arch(番外13)GD32L233评测-来点音乐
- java应届生如何找工作?
- 基于Ventoy制作单个U盘引导Windows+Linux+黑苹果macOS
- android WIFI学习总结
- 个人总结/IPC方法的优缺点和适用场景
- 阿里P8大牛透漏高薪背后的真正逻辑