1.public interface IHasConcurrencyStamp
解析:string ConcurrencyStamp { get; set; }

2.public interface IRouteTemplateProvider
解析:

string Template { get; }
int? Order { get; }
string Name { get; }

3.public abstract class PermissionDefinitionProvider
解析:

public virtual void PreDefine(IPermissionDefinitionContext context)
public abstract void Define(IPermissionDefinitionContext context)
public virtual void PostDefine(IPermissionDefinitionContext context)

4.public interface IPermissionDefinitionContext
解析:

IServiceProvider ServiceProvider { get; }
PermissionGroupDefinition GetGroup(string name);
PermissionGroupDefinition GetGroupOrNull(string name);
PermissionGroupDefinition AddGroup();
void RemoveGroup(string name);
PermissionDefinition GetPermissionOrNull(string name);

5.host文件夹
解析:host文件夹包含具有不同配置的应用程序,用于演示在应用程序中如何托管模块,这些不是模块的一部分,但开发时会很有用。

6.ICreationAuditedObject
解析:这个接口被实现来存储信息,谁和什么时候创建了信息。

DateTime CreationTime { get; }
Guid? CreatorId { get; }

7.IModificationAuditedObject
解析:这个接口被实现来存储信息,谁和什么时候修改了信息。

Guid? LastModifierId { get; set; }
DateTime? LastModificationTime { get; set; }

8.CreationAuditedAggregateRoot
解析:这个类被用来简化实现ICreationAuditedObject对于聚合根。

DateTime CreationTime { get; protected set; }
Guid? CreatorId { get; protected set; }

9.IAuditedObject
解析:这个接口能够被实现来增加标准审计属性到一个类中。

ICreationAuditedObject
IHasCreationTime
IMayHaveCreator
IModificationAuditedObject
IHasModificationTime

10.public interface IAbpModule
解析:

void ConfigureServices(ServiceConfigurationContext context);

11.options.AddDefaultRepositories(includeAllEntities: true)
解析:为DbContext中的所有实体注册默认仓储。

12.AddHttpClientProxies()方法
解析:在给定的程序集中,为所有扩展自IRemoteService接口的公开接口,注册HTTP客户端代理。

public static IServiceCollection AddHttpClientProxies(this IServiceCollection services, Assembly assembly, string remoteServiceConfigurationName = "Default", bool asDefaultServices = true)

13.public PropertyInfo[] GetProperties()
解析:返回当前类型的所有公共属性。

14.public class UserLookupCountInputDto
解析:

public string Filter { get; set; }

15.public interface IIdentityUserLookupAppService
解析:位于命名空间Volo.Abp.Identity中,包含方法:

Task<UserData> FindByIdAsync(Guid id);
Task<UserData> FindByUserNameAsync(string userName);
Task<ListResultDto<UserData>> SearchAsync(UserLookupSearchInputDto input);
Task<long> GetCountAsync(UserLookupCountInputDto input);

16.skip-cli-version-check
解析:跳过检查最新版本的ABP CLI。如果没有指定,它会检查最新版本,如果检查到ABP CLI的新版本,会显示一条警告消息。

17.ABP CLI命令
解析:
[1]help:展示ABP CLI的用法帮助信息
[2]new:生成基于ABP的启动模板
[3]update:自动更新的ABP解决方案ABP相关的NuGet和NPM包
[4]add-package:添加ABP包到项目
[5]add-module:添加应用模块到解决方案
[6]generate-proxy:生成客户端代理以使用HTTP API端点
[7]remove-proxy:移除以前生成的客户端代理
[8]switch-to-preview:切换到ABP框架的最新预览版本
[9]switch-to-nightly:切换解决方案所有ABP相关包为夜间构建版本
[10]switch-to-stable:切换解决方案所有ABP相关包为最新的稳定版本
[11]translate:当源代码控制存储库中有多个JSON[本地化]
[12]login:使用在abp.io的用户名和密码在你的计算机上认证
[13]logout:在计算机注销认证
[14]install-libs:为MVC/Razor Pages和Blazor Server UI类型安装NPM包

18.ABP默认泛型仓储
解析:
[1]ABP为实体提供默认的泛型仓储,可以使用它们来执行基本的数据库操作
[2]类中注入的IRepository<TodoItem,Guid>是TodoItem实体的默认存储库

19.Volo.Abp.Ddd.Application.Contracts
解析:
[1]IApplicationService
[2]ICreateAppService
[3]ICreateUpdateAppService
[4]ICrudAppService
[5]IDeleteAppService
[6]IReadOnlyAppService
[7]IUpdateAppService

20.Volo.Abp.Ddd.Application
解析:
[1]AbstractKeyCrudAppService
[2]AbstractKeyReadOnlyAppService
[3]ApplicationService
[4]CrudAppService
[5]ReadOnlyAppService

21.IRemoteService接口
解析:如果一个类实现了IRemoteService接口,那么它会被自动选择为API控制器。

22.ABP客户端代理生成
解析:Install-Package Volo.Abp.Http.Client。AddHttpClientproxies方法获得一个程序集,找到这个程序集中所有的服务接口,创建并注册代理类。

[DependsOn(typeof(AbpHttpClientModule), //用来创建客户端代理typeof(BookStoreApplicationContractsModule) //包含应用服务接口)]
public class MyClientAppModule : AbpModule
{public override void ConfigureServices(ServiceConfigurationContext context){//创建动态客户端代理context.Services.AddHttpClientProxies(typeof(BookStoreApplicationContractsModule).Assembly);}
}

23.ABP默认跨域配置代码
解析:

context.Services.AddCors(options =>
{options.AddPolicy(DefaultCorsPolicyName, builder =>{builder.WithOrigins(configuration["App:CorsOrigins"].Split(",", StringSplitOptions.RemoveEmptyEntries).Select(o => o.RemovePostFix("/")).ToArray()).WithAbpExposedHeaders().SetIsOriginAllowedToAllowWildcardSubdomains().AllowAnyHeader().AllowAnyMethod().AllowCredentials();});
});

24.ABP实现乐观锁
解析:AggregateRoot类实现了IHasExtraProperties和IHasConcurrencyStamp接口:
[1]IHasExtraProperties使实体可扩展
[2]IHasConcurrencyStamp添加了由ABP框架管理的ConcurrencyStamp属性实现乐观并发

25.Quartz.net实现单线程执行Job
解析:

[DisallowConcurrentExecutionAttribute]
public class QueryWork : QuartzBackgroundWorkerBase
{private IAppService _appService;public QueryWork(IAppService appService){_appService = appService;JobDetail = JobBuilder.Create<QueryWork>().WithIdentity(nameof(QueryWork)).Build();Trigger = TriggerBuilder.Create().WithIdentity(nameof(QueryWork)).WithDailyTimeIntervalSchedule(s => s.WithIntervalInSeconds(5)).Build();}public async override Task Execute(IJobExecutionContext context){await _appService.QueryAsync();}
}

ABP VNext学习日记25相关推荐

  1. ABP VNext学习日记17

    1.public static Assembly GetExecutingAssembly() 解析:得到包含的代码正在执行的程序集. 2.public interface IHostedServic ...

  2. ABP VNext学习日记20

    1.AbpApiControllerActivator 解析:实现了IHttpControllerActivator接口,根据controller的类型生成指定的controller. 2.AbpDy ...

  3. ABP VNext学习日记15

    1.Polly服务容错模式 解析: [1]错误处理fault handling:重试.熔断.回退 [2]弹性应变resilience:超时.舱壁.缓存 2.Polly错误处理步骤 解析: [1]定义条 ...

  4. ABP VNext学习日记3

    1.ABP中的DTO 解析:在ABP的设计中,有两种不同类型的DTO,分别是用于新增.修改.删除的Input DTO,和用于查询的Output DTO. 2.Unit of Work 解析:工作单元与 ...

  5. ABP VNext学习日记2

    1.框架模块和应用程序模块 解析: [1]框架模块:这些是框架的核心模块,比如缓存.邮件.主题.安全.序列化.验证.EF Core集成.MongoDB集成等.它们没有应用/业务功能,它们提供了日常开发 ...

  6. ABP VNext学习日记21

    1.public class PagedResultDto<T> : ListResultDto<T>, IPagedResult<T> 解析: public lo ...

  7. ABP VNext学习日记30

    1.IDS4中的/connect/token接口 解析:固定写法,不是开发自定义的,只需要直接去使用就行了,注意调用方式时的输入参数. 2.RequestPasswordTokenAsync 解析: ...

  8. ABP VNext学习日记18

    1.IAuthorizationService 解析:IAuthorizationService具有两个AuthorizeAsync方法重载:一个接受资源和策略名称,另一个接受资源并提供要评估的要求的 ...

  9. ABP VNext学习日记22

    1.PreConfigureServices和PostConfigureServices 解析:AbpModule类还定义了PreConfigureServices和PostConfigureServ ...

最新文章

  1. Nature:梁冠翔等发现肠道病毒组在新生儿体内分段寄生的模式
  2. 解析卷积的高速计算中的细节,一步步代码带你飞
  3. Spring mvc 转发、重定向
  4. HEVC支持苹果HLS的几个关键问题
  5. CasperJS基于PhantomJS抓取页面
  6. 一文解读使用WinDbg排查iis 中CPU占用高的站点问题
  7. 宣告推出.NET Core 3.0 Preview 7
  8. 单片机ADC采样算法----加权递推平均滤波法
  9. Deal with relational data using libFM with blocks
  10. 华为机试HJ64:MP3光标位置
  11. 同时安装 Python 2 和 Python 3环境下 pip 的使用
  12. 图片识别引擎tesseract-ocr安装
  13. Swift 5 UIStackView中添加自动换行的Label
  14. UDS学习笔记(六)——程序刷写
  15. 韩立刚老师 《计算机网络》视频课程目录
  16. 浅谈 Spring 中的设计模式
  17. 情境认知测量方法的研究
  18. 补肾常见中成药辩驳------右归丸、左归丸与桂附地黄丸、六味地黄丸
  19. 固定不动的层(兼容IE6)
  20. MarkdownPad 2 安装配置及常见问题

热门文章

  1. 嵊州D3T1 山魔 烙饼问题
  2. 零基础学 MySQL
  3. mysql中insert语句的五种用法
  4. 【网虫】做网站必知的两个命令 活用ping与tracert
  5. c语言编程高阶证书有用吗,信誉好:C语言编程高阶证什么报名流程那可以考取
  6. 树莓派4B系统一键安装opencv,再也不要用编译安装啦!(支持buster、bullseye)
  7. 成为顶级博主的秘诀是什么?《乘风者周刊》专访“处女座程序猿”牛亚运
  8. Excel数据处理:提取混合字符中的汉字
  9. 手感与画质兼备|广东未来科技AI立体数码相机
  10. 国产单片机GD32系列开坑,带你零死角玩转GD32 第五章