一个.NET内置依赖注入的小型强化版-牛翰网

一个.NET内置依赖注入的小型强化版

前言 .NET生态中有许多依赖注入容器。在大多数情况下,微软提供的内置容器在易用性和性能方面都非常优秀。外加ASP.NET Core默认使用内置容器,使用很方便。 但是笔者在使用中一直有一个头疼的问...
基于EF Core存储的国际化服务-牛翰网

基于EF Core存储的国际化服务

前言 .NET 官方有一个用来管理国际化资源的扩展包Microsoft.Extensions.Localization,ASP.NET Core也用这个来实现国际化功能。但是这个包的翻译数据是使用resx资源文件来管理的,这就意味着无...
9个月前
04713
基于EF Core存储的Serilog持久化服务-牛翰网

基于EF Core存储的Serilog持久化服务

前言 Serilog是 .NET 上的一个原生结构化高性能日志库,这个库能实现一些比内置库更高度的定制。日志持久化是其中一个非常重要的功能,生产环境通常很难挂接调试器或者某些bug的触发条件很奇怪...
论如何直接用EF Core实现创建更新时间、用户审计,自动化乐观并发、软删除和树形查询(上)-牛翰网

论如何直接用EF Core实现创建更新时间、用户审计,自动化乐观并发、软删除和树形查询(上)

前言 数据库并发,数据审计和软删除一直是数据持久化方面的经典问题。早些时候,这些工作需要手写复杂的SQL或者通过存储过程和触发器实现。手写复杂SQL对软件可维护性构成了相当大的挑战,随着S...
9个月前
04514
论如何直接用EF Core实现创建更新时间、用户审计,自动化乐观并发、软删除和树形查询(中)-牛翰网

论如何直接用EF Core实现创建更新时间、用户审计,自动化乐观并发、软删除和树形查询(中)

前言 数据库并发,数据审计和软删除一直是数据持久化方面的经典问题。早些时候,这些工作需要手写复杂的SQL或者通过存储过程和触发器实现。手写复杂SQL对软件可维护性构成了相当大的挑战,随着S...
9个月前
03614
论如何直接用EF Core实现创建更新时间、用户审计,自动化乐观并发、软删除和树形查询(下)-牛翰网

论如何直接用EF Core实现创建更新时间、用户审计,自动化乐观并发、软删除和树形查询(下)

前言 数据库并发,数据审计和软删除一直是数据持久化方面的经典问题。早些时候,这些工作需要手写复杂的SQL或者通过存储过程和触发器实现。手写复杂SQL对软件可维护性构成了相当大的挑战,随着S...
9个月前
03810
如何优雅地让 ASP.NET Core 支持异步模型验证-牛翰网

如何优雅地让 ASP.NET Core 支持异步模型验证

前言 在ASP.NET Core官方仓库中有个一直很受关注的问题Please reconsider allowing async model validation。FluentValidation的作者也非常关心这个问题,因为FluentValidation内置异步验证功能...