开发实战:ASP.NET Core + EF Core 实现动态可扩展的分页方案
引言 欢迎阅读,这篇文章主要面向初级开发者。 在开始之前,先问你一个问题:你做的系统,是不是每次增加一个查询条件或者排序字段,都要去请求参数对象里加一个属性,然后再跑去改 EF Core 的查询逻辑? 如果是,那这篇文章应该对你有用。我会带你做一个统一的、扩展起来不那么麻烦的分页查询方案。整体思路是四件事:统一入参、统一出参、动态排序、动态过滤。 …
引言 欢迎阅读,这篇文章主要面向初级开发者。 在开始之前,先问你一个问题:你做的系统,是不是每次增加一个查询条件或者排序字段,都要去请求参数对象里加一个属性,然后再跑去改 EF Core 的查询逻辑? 如果是,那这篇文章应该对你有用。我会带你做一个统一的、扩展起来不那么麻烦的分页查询方案。整体思路是四件事:统一入参、统一出参、动态排序、动态过滤。 …
在一个项目中,方便为多个客户提供服务,我们需要实现多租户系统。多租户系统,就是多个客户共享一个运行的项目实例,同时确保每个客户的数据安全隔离(你看不见我,我看不见你)。 这篇文章,我们将落地在 ASP.NET Core 和 Entity Framework Core 中,基于 TenantId 的全局过滤机制,实现多租户数据隔离。 原理解析 先确定隔离模型 多租户常见有三种模型: 每个租户一套数据 …
引言 不知道你有没有在面试中遇到过这样的问题:“中间件和过滤器的区别是什么?",或者在平时开发中思考过:“一个请求进来,ASP.NET Core 到底是怎么一步步处理它的?” 这篇文章就来聊聊,不会涉及太深的源码,主要面向初级开发者,帮你建立一个清晰的认知。 先说中间件 中间件是 ASP.NET Core 处理 HTTP 请求的基本部件,是框架本身的组 …