搜索分类、视频或标签
从零开始学习搭建自己的企业级架构,基于 .NET Core 技术栈的最佳实践,几十种开源框架的优雅组合。
共 51 项内容
更改目标框架为 .NET 6 版本,更新所有包引用,使用最小托管模型,将 Startup 与新的最小托管模型结合使用,升级 IdentityServer 版本,重构项目代码,解决代码错误警告建议, 基于 JavaScript 和 TypeScript 项目的 SDK 模板, 修正可空引用类型,使用源代码生成器记录强类型语义日志,升级 OAuth 外部身份认证提供程序。
学习微软开源 YARP 反向代理服务器,在零度框架微服务中集成网关,路由和负载均衡集群节点配置,支持认证与授权,会话粘性和一致性,负载均衡切换算法,中间件扩展,请求转换,微服务健康状况监测,分布式跟踪,支持 gRPC 请求代理转发。
使用前端请求管道传递 JwtBearer 访问令牌,设计并加载用户配置信息和权限访问控制列表,可见性权限控制,细粒度操作按钮权限控制组件,路由与菜单权限控制,基于多租户授权主体生成权限演示数据,重构并修复多租户数据筛选器,重构权限断言相关服务的依赖注入生命周期,重构租户管道中间件执行顺序,实战演练完整的权限系统。
前端客户端 Identity Server 授权配置 ,前端客户端登录与登录回调,前端客户端注销与注销回调,使用 OIDC 前端库实现基于 OAuth2 协议的用户会话和访问令牌管理,编写基于 React 的认证与授权页面,配置路由,未登录时跳转到登录页面,登录后跳转到回调页面,获取用户信息,用户退出跳转,调试 React 应用的方法和技巧。
领域层仓储实现批量创建,批量更新,批量删除,批量操作性能优化与相关开源库,使用仓储加载实体的导航属性,预加载和显式加载,基于依赖注入配置导航属性默认加载项,使用部分类和扩展方法分割代码,提高代码的可维护性,常用命名规范说明。
表格批量删除配置,多选与全选操作,弹出批量操作工具条,在工具条上添置自定义组件和布局,字符串插值格式化,学习前端累加器,析构对象参数,异步调用后台接口实现批量删除,使用浮动组件提高批量操作的用户体验,列表页面的用户体验设计价值观。
删除确认设计,基于回收站和操作版本历史记录的设计可以提高用户体验,气泡确认框组件,警告提示组件,全局消息提示组件,对话框组件,通知提示框组件,在操作列上实现删除功能,异步删除,加载中实现,使用前端代理调用后端接口实现删除,在后端模拟耗时操作后测试前端加载功能的体验。
前端验证与后端验证,模态弹框表单更改为抽屉式表单,编写自定义组件,在表格操作列上绑定编辑行为,实现抽屉式编辑表单,组件之间传值,使用钩子进行值回传,使用自定义组件,快速绑定表单数据,调用后台接口实现修改功能,关于通用 CRUD 服务中特定字段更新操作的改进与说明。
弹框创建对话框,表单与表单项,模态对话框,抽屉对话框,表单组件,各种各样的浮层表单,分步骤填写的表单,配置表单项数据验证规则,组件的引用与行为调用,提交表单前自动验证,调用后台接口实现创建功能,创建后刷新表格数据,弹出成功提示消息框。
自动生成表格列搜索,自定义搜索渲染器,根据用户设备分辨率实现动态响应式布局,使用过滤器实现搜索,使用抽屉组件展示列详情,使用描述列表展示详情内容,使用 React 状态钩子存储当前选择的行和抽屉状态,理解组件与状态的绑定关系,使用骨架屏提高用户加载数据的体验。
设计分页与排序模型,多字段联合排序描述器,在应用服务中使用排序描述器对列表排序,使用字段名称生成排序表达式,实现排序规则模型绑定器和模型绑定提供者,配置排序模型绑定提供者,前端列表传递排序参数,基于通用模型自定义数据查询模型,重写数据过滤器,在前端启用关键字搜索。
使用过滤器扩展 OpenApi 组件,使用 UMI 工具链基于 OpenApi 文档生成前端接口请求代理,表格组件的基本配置与多语言实现,请求后台 WebApi 接口绑定数据,数据表分页,使用代理服务解决跨域问题和接口数据模拟,完全实现前后端分离开发模式。
默认登录逻辑的实现,站点布局主题配置,修改站点信息和模板页,推荐 SVG 格式的矢量 LOGO 图标,设置页头和页脚内容,实现中英文多语言内容切换,编写页面组件,将页面组件关联到路由菜单,配置路由菜单支持多语言,分割多语言资源文件。
初始化前端项目,将前端框架集成到零度解决方案,前端项目版本控制,使用 Visual Studio Code 开发前端 React 项目并实现自动化编译和运行,启动项目,前端项目文件夹结构,页面代码结构解析,使用 UMI 插件基于 OpenApi 帮助文档自动化生成前端代码,生成接口前端模拟数据,将前端项目打包发布到生产平台。
关于 NODE.JS 环境安装,学会 NPM 和 YARN 包管理器,使用 UMI 工具初始化前端脚手架,快速创建 ANT DESIGN PRO 脚手架,使用包管理器安装依赖项,编译并启动前端应用程序,开启 UMI UI 工具,使用 UMI 提供的模板快速开发前端通用界面和功能,所见即所得的快速增量编译和浏览器自动刷新,使用 Visual Studio Code 开发前端 React 项目并实现自动化编译和运行。
零度框架前端技术栈,React 是用于构建前端用户界面的 JavaScript 库,声明式,组件化,一次学习,跨平台编写,学习基于 Ant Design 设计体系和价值观,Antd 是一整套基于 React UI 的组件库,主要用于快速开发企业级中后台应用,Ant Design Pro 提供开箱即用的中台前端和设计解决方案。
在命令处理流程中使用拦截器横切关注点,在 MediatR 命令管道中使用 Behavior 行为拦截 Handler 命令处理器,日志记录行为拦截器,命令验证行为拦截器,分布式日志行为拦截器,将具有泛型参数的行为拦截器注入到容器中,将零度框架项目中引用的包升级到最新版,善用剪贴板历史记录提高粘贴效率,在 NPM 包控制台执行多条数据库迁移命令。
在基于 DDD 领域模型驱动设计的微服务中,实现 CQRS 查询与命令分离,使用 MediatR 实现 Command 命令模式,编排命令和命令处理程序,将命令封送到命令分发器,使用命令处理程序处理请求,命令不具幂等性,使用装饰器设计模式封装命令去重机制,解决由于网络等其它问题导致的命令重试去重,使用去重命令处理器分发子命令。
理解 CQRS 命令和查询职责分离模式,在传统的体系结构中,使用同一数据模型查询和更新数据库,为提高数据库的扩展性,使用 CQRS 模式将读取和写入分离到不同的应用模型中,关于数据库读写分离后的主从复制可靠性,在零度框架中使用 Dapper 实现 CQRS 查询模式,抽象并实现数据库连接工厂接口,通过示例学习 CQRS 模式的使用方法,优雅地实现数据记录分页和关键字搜索。
租户信息与连接字符串配置,连接字符串提供者接口,默认连接字符串提供者实现,多租户连接字符串提供者实现,从远程租户配置系统读取接字符串,使用数据库连接拦截器动态变更连接字符串,多租户独立数据库部署和迁移方案。
租户信息异步线程上下文,使用中间件在提取租户信息,多租户数据隔离筛选器,为添加的实体自动设置租户编号,软删除全局筛选器,保存实体变更时分发领域事件,使用保存变更拦截器横切关注点,生成基于多租户和软删除的产品演示数据。
租户与用户的关系,在用户表添加租户字段,自定义用户声明信息工厂,在访问令牌中关联租户编号,生成租户演示数据,租户系统二次开发和设计,不同租户下用户名的唯一性和重复性,租户用户名规则,为租户提供不同的域名或访问地址。
定义权限策略常量,实现权限定义提供者,显示多语言本地化权限,在容器中自动注入授权相关的接口和实现,在控制器和操作上注解权限策略,生成权限演示数据,运行并演示授权机制,重构权限操作需求,设计并实现基于数据资源的动态授权机制。
设置微服务启动端口,在生产平台中部署 OpenAPI 帮助文档,导入演示数据,创建安全操作过滤器,在 IdentityServer 上配置 CORS 跨域资源共享,在 OpenAPI 帮助文档中配置 OAuth 身份认证授权方式,基于 JWT 令牌的 Bearer 身份认证方式,在 API 操作上注解授权特性,基于策略和角色的授权,匿名访问时跳过授权。