共计 119 篇文章

Abp vNext 源码分析 - 8. 审计日志

一、简要说明 ABP vNext 当中的审计模块早在 **依赖注入与拦截器**一文中有所提及,但没有详细的对其进行分析。 审计模块是 ABP vNext 框架的一个基本组件,它能够提供一些实用日志记录。不过这里的日志不是说系统日志,而是说接口每次调用之后的执行情况(执行时间、传入参数、异常信息、请求 IP)。 除了常规的日志功能以外,关于 实体 和 聚合 的审计字段接口也是存放在审计模块当中的。 ...

在 ABP vNext 中编写仓储单元测试的问题一则

一、问题 新项目是基于 ABP vNext 框架进行开发的,所以我要求为每层编写单元测试。在同事为某个仓储编写单元测试的时候,发现了一个奇怪的问题。他的对某个聚合根的 A 字段进行了更新,随后对某个导航属性 B 也进行了变更,最后通过仓储提供的 UpdateAsync() 方法对变更的数据进行持久化。 结果再次查出来的时候,发现聚合根的 A 字段倒是更新了,但是导航属性 B 的内部字段没有进行变更。例如在下面的实例当中, ...

Abp vNext 源码分析 - 7. 权限与验证

一、简要说明 在上篇文章里面,我们在 ApplicationService 当中看到了权限检测代码,通过注入 IAuthorizationService 就可以实现权限检测。不过跳转到源码才发现,这个接口是 ASP.NET Core 原生提供的 “基于策略” 的权限验证接口,这就说明 ABP vNext 基于原生的授权验证框架进行了自定义扩展。 让我们来看一下 Volo.Abp.Ddd.Application ...

移除 DevExpress 的 XtraForm 标题文字阴影

问题 在使用 DevExpress 开发 WinForm 程序时,我是使用的默认皮肤进行开发。但客户要求标题栏背景色改为蓝色,标题文字颜色改为白色。 改颜色比较简单,参考了 DevExpress Support 的说明,通过获取皮肤更改 BackColor 和 ForeColor 就可以实现。不过更改之后,发现在低分屏下面,标题文字出现模糊的情况。 原因 初步猜想应该是文字阴影的问题,但搜索了大部分资料没有找到解决方案,最后在 ...

Abp vNext 源码分析 - 6. DDD 的应用层支持 (应用服务)

一、简要介绍 ABP vNext 针对于应用服务层,为我们单独设计了一个模块进行实现,即 Volo.Abp.Ddd.Application 模块。 PS:最近博主也是在恶补 DDD 相关的知识,这里推荐大家看一下 ThoughtWorks 的 DDD 相关文章。 关于 DDD 相关的著作,我这儿还是推荐经典的那三本**《领域驱动设计: ...