轮子

助力项目快捷实现国际化,造个多语言轮子

前段时间跟同事吹水聊天时,吐槽一个话题,就是公司项目都需要做多语言,前端后端都需要做。 而且是需要支持8国语言翻译,每次弄起来都特麻烦,每加一个Key就需要去翻译其他7个语言出来添加,每新增一个项目就需要弄一遍多语言资源,重复且枯燥费时的体力活。 项目想法 本项目主打一个一处配置多语言,多处使用的想 ......
轮子 项目 国际

码农的转型之路-造轮子还继续吗?

昨天发布了一篇 码农的转型之路-这款轮子可以造吗? 帖子,目的是为了介绍一下要做的事情,顺便收集一下潜在客户们的意向,总体情况不容乐观。 一、被一个评论吓到瑟瑟发抖 1.很久没有刷技术类社区了,赶紧去科普一下,Furion的事件还在持续发酵,评论区真是差评如潮, 戏称是钉在了.Net的耻辱柱上,是耻 ......
轮子

码农的转型之路-这款轮子可以造吗?

从昨天发表的《码农的转型之路-多年以来的反思》收到了不少猿友的评论和关注,还有几个加了wx,给了很多正面的反馈。趁着热度还在:) 也有很多人不知道这个人要干嘛,索性今天正式介绍一下,但名字还没有想好,她应该是一款浏览器工具。 一、什么应用场景?1.C/S开发 大概是7年前当时公司接了一个区域品牌羊肉 ......
轮子

别再重复造反射轮子了,Spring 中的 ReflectionUtils 工具类,应有尽有!

作者:策马踏清风 链接:https://www.jianshu.com/p/756778f5dc87 ReflectionUtils是spring针对反射提供的工具类。 handleReflectionException异常处理 推荐一个开源免费的 Spring Boot 实战项目: https:/ ......

还在手动造轮子?试试这款可以轻松集成多种支付渠道的工具!

IJPay 的宗旨是让支付触手可及。封装了微信支付、QQ 支付、支付宝支付、京东支付、银联支付、PayPal 支付等常用的支付方式以及各种常用的接口。 ......
轮子 手动 多种 渠道 工具

造轮子之单层应用总结篇

在前面的篇章中,我们一起探讨了单层应用,从基础设施的建设到实现各种业务功能,我们的单层应用经历了一次又一次的进化。让我们来回顾一下我们所实现的一些重要功能。 首先,我们在基础设施方面取得了巨大的进展。我们实现了自动依赖注入,这个神奇的技术让我们能够轻松管理各个模块之间的依赖关系,提高了代码的可维护性 ......
单层 轮子

造轮子之文件管理

前面我们完成了设置管理,接下来正好配合设置管理来实现文件管理功能。文件管理自然包括文件上传,下载以及文件存储功能。设计要求可以支持扩展多种存储服务,如本地文件,云存储等等。 数据库设计 首先当然是我们的数据库表设计,用于管理文件。创建一个文件信息存储表。 using Wheel.Domain.Com ......
轮子 文件

造轮子之设置管理

前面我们基础设施基本搭建完毕,后面可以做一些稍微复杂点的功能了,接下来就来实现一个设置管理。设置管理一般用做一些系统设置之类的,如邮箱配置等,面向使用人员。而不需要修改我们的配置文件,修改配置文件的方式就偏向于技术人员了。话不多说,开造。 设计结构 设置管理中需要2个表,一个是设置组表,比如什么邮箱 ......
轮子

PHP轮子批量替换数据库前缀

<?php include_once('fix_mysql.inc.php'); //设置好相关信息 echo '<meta charset="utf-8">'; $dbserver='localhost'; $dbname='test';//替换成你的数据库名 $dbuser='root';//替 ......
前缀 轮子 数据库 数据 PHP

造轮子之集成GraphQL

先简单对比以下GraphQL和WebAPI:GraphQL和Web API(如RESTful API)是用于构建和提供Web服务的不同技术。 数据获取方式: Web API:通常使用RESTful API,客户端通过发送HTTP请求(如GET、POST、PUT、DELETE)来获取特定的数据。每个请 ......
轮子 GraphQL

造轮子之种子数据

在前面我们基本把应用框架的基础设施搭建完成。接下来我们就得着手处理一下种子数据的问题。在一个基础框架里面,种子数据很重要,比如一些基础数据,初始用户等等,这些都需要初始化,否则程序启动却无法使用就很尴尬了。 IDataSeeder 首先定义一个种子数据接口 using Wheel.Dependenc ......
轮子 种子 数据

造轮子之消息实时推送

前面我们的EventBus已经弄好了,那么接下来通过EventBus来实现我们的消息推送就是自然而然的事情了。说到消息推送,很多人肯定会想到Websocket,既然我们使用Asp.net core,那么SignalR肯定是我们的首选。接下来就用SignalR来实现我们的消息实时推送。 Notific ......
轮子 实时 消息

造轮子之EventBus

前面基础管理的功能基本开发完了,接下来我们来优化一下开发功能,来添加EventBus功能。EventBus也是我们使用场景非常广的东西。这里我会实现一个本地的EventBus以及分布式的EventBus。分别使用MediatR和Cap来实现。 现在简单介绍一下这两者:MediatR是一个轻量级的中介 ......
轮子 EventBus

造轮子之属性注入配合懒加载构建服务抽象基类

在前面实现管理API的时候,可以看到我们用的挺多功能是没有通过构造函数注入的。比如缓存DistributedCache,MemoryCache,对象映射Mapper,多语言L,当前用户CurrentUser等等。这些全都初始化在WheelServiceBase以及WheelControllerBas ......
轮子 属性

造轮子之菜单管理

前面完成了基础管理的相关API,接下来就得做一个菜单管理了,用于对接管理后台前端界面。 设计菜单结构 菜单是一个多级结构,所以我们得设计一个树形的。包含自己上级和下级的属性。同时预留Permission用于做可选的权限限制。 namespace Wheel.Domain.Menus { /// <s ......
轮子 菜单

造轮子之角色管理

在asp.net core identity中已经有RoleManager,我们只需要封装一下API操作Role即可完成我们角色管理相关功能,这里API打算只提供分页查询,创建以及删除,不提供修改API。 实现RoleManageAppService IRoleManageAppService na ......
轮子 角色

造轮子之用户管理

跟角色管理一样,asp.net core identity中已经包含了UserManager,我们只需要简单包装一下逻辑即可完成我们的用户管理相关功能。 这里只打算添加分页查询,创建以及修改用户的API,不提供删除API。 实现UserManageAppService IUserManageAppS ......
轮子 用户

造轮子之多语言管理

多语言也是我们经常能用到的东西,asp.net core中默认支持了多语言,可以使用.resx资源文件来管理多语言配置。但是在修改资源文件后,我们的应用服务无法及时更新,属实麻烦一些。我们可以通过扩展IStringLocalizer,实现我们想要的多语言配置方式,比如Json配置,PO 文件配置,E ......
轮子

造轮子之权限管理

上文已经完成了自定义授权策略,那么接下来就得完善我们的权限管理了。不然没有数据,如何鉴权~ 表设计 创建我们的表实体类: namespace Wheel.Domain.Permissions { public class PermissionGrant : Entity<Guid> { public ......
轮子 权限

造轮子之自定义授权策略

前面我们已经弄好了用户角色这块内容,接下来就是我们的授权策略。在asp.net core中提供了自定义的授权策略方案,我们可以按照需求自定义我们的权限过滤。这里我的想法是,不需要在每个Controller或者Action打上AuthorizeAttribute,自动根据ControllerName和 ......
轮子 策略

造轮子之asp.net core identity

在前面我们完成了应用最基础的功能支持以及数据库配置,接下来就是我们的用户角色登录等功能了,在asp.net core中原生Identity可以让我们快速完成这个功能的开发,在.NET8中,asp.net core identity支持了WebApi的注册登录。这让我们在WebApi中可以更爽快的使用 ......
轮子 identity core asp net

造轮子之ORM集成

Dotnet的ORM千千万,还是喜欢用EF CORE 前面一些基础完成的差不多了,接下来可以集成数据库了,官方出品的ORM还是比较香。所以接下来就是来集成EF CORE。 安装包 首先我们需要安装一下EF CORE的NUGET包,有如下几个: Microsoft.EntityFrameworkCor ......
轮子 ORM

造轮子之缓存

缓存也是在业务开发过程中经常使用的一环。在Asp.net core中,原生包含了MemoryCache内存缓存和DistributedCache分布式缓存两种缓存。在Program中添加以下代码注册服务之后即可使用依赖注入使用两种缓存。 builder.Services.AddMemoryCache ......
轮子 缓存

造轮子之统一请求响应格式

在上文中我们实现了统一业务异常处理,在异常响应中我们也使用了统一的响应格式返回给客户端。接下来我们就讲一下约定统一的氢气响应格式。在业务开发中,一个规范统一的请求响应格式可以提高我们的前后端开发对接效率,同时清晰的结构提高了可读性。 响应基类 首先定义一个最基础的只提供Code和Message两个属 ......
轮子 格式

造轮子之日志

在日常使用中日志也是我们必不可少的一环,在原生日志组件中支持的日志驱动比较少,所以我们需要使用一些三方日志组件来扩展我们的日志记录。 集成Serilog 三方日志组件有很多,如NLOG,LOG4NET等等,这里个人习惯,使用Serilog。Serilog的集成方式非常简单。 安装Nuget包 Ser ......
轮子 日志

造轮子之自动依赖注入

在我们造轮子的起初,基建非常重要,而依赖注入是我们使用频率最高的一项,频繁的手动注入太麻烦,所以我们来实现一下自动化注入。 技术选型 在ASP.NET Core中,有两种常见的依赖注入方式:原生依赖注入和三方依赖注入。 原生依赖注入 ASP.NET Core提供了一个内置的依赖注入容器,可以用于管理 ......
轮子

造轮子之统一业务异常处理

异常处理也是我们必不可少的一环,借助Asp.netCore的UseExceptionHandler中间件,我们可以很轻易的配置我们的业务异常处理逻辑。 自定义业务异常类 首先我们定义一个业务异常类,继承Exception,添加一个Code状态码属性,和MessageData数组,这个数组用于Form ......
轮子 业务

202310061227-《心得:低版本mysql配置一,些轮子插件》

1. 对于mysql 5.7.42, 驱动(connector)选择:5.1.46。 2. 测试链接时:useSSL=true&enabledTLSProtocols=TLSv1.1 驱动链接字符串上要拼接上。 3. 驱动链接字符串: 高版本mysql,意味着高版本connector,选>=8; 低 ......
轮子 202310061227 插件 心得 版本

我封装的一个REPR轮子 Biwen.QuickApi

Biwen.QuickApi 项目介绍 [QuickApi("hello/world")] public class MyApi : BaseQuickApi<Req,Rsp>{} 提供一种简单集成的Minimal Web Api交互模块 遵循了 REPR 设计 (Request-Endpoint- ......
轮子 QuickApi Biwen REPR

用Rust手把手编写一个Proxy(代理), 准备篇, 动手造轮子

用Rust手把手编写一个Proxy(代理), 准备篇, 动手造轮子 wmproxy 将实现http/https代理, socks5代理, 后续将实现websocket代理, 内外网穿透等, 会将实现过程分享出来, 希望感兴趣的可以一起参与参与 项目 ++wmproxy++ gite: https:/ ......
轮子 Proxy Rust
共46篇  :1/2页 首页上一页1下一页尾页