# 工具类管理库ExUtil **Repository Path**: starry123/ruovea-extend ## Basic Information - **Project Name**: 工具类管理库ExUtil - **Description**: ruovea.extend.package 是一系列扩展工具类库的集合,旨在简化开发流程,提高代码的可维护性和可读性。这些工具类库涵盖了从自动服务注入到日志记录、从加密解密到文件操作等多个方面的功能,为开发者提供了全面的解决方案。 - **Primary Language**: C# - **License**: Apache-2.0 - **Default Branch**: NetCore - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 2 - **Created**: 2021-09-28 - **Last Updated**: 2025-09-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: NetCore ## README ## ruovea.extend.package ## 介绍 **ruovea.extend.package** 是一系列扩展工具类库的集合,旨在简化开发流程,提高代码的可维护性和可读性。这些工具类库涵盖了从自动服务注入到日志记录、从加密解密到文件操作等多个方面的功能,为开发者提供了全面的解决方案。 ## 1、自动服务注入 **RuoVea.Autowired** 是一个自动服务注入工具,简化了依赖注入的过程,使代码更加简洁和易于维护。 ```c# Install-Package RuoVea.Autowired ``` [详细介绍](/NetCore/RuoVea.Autowired/RuoVea.Autowired/README.md ':include:type=md') ## 2、动态生成WebApi的组件 RuoVea.DynamicWebApi 是一个动态生成WebApi的组件,能够根据符合条件的类自动生成符合Restful风格的API。它可以直接由MVC框架调用逻辑,无性能问题,并且完美兼容Swagger来构建API说明文档。 应用场景:DDD架构中的应用逻辑层,可使用本组件来直接生成WebApi,而无需再用Controller来调用。 ```c# Install-Package RuoVea.DynamicWebApi ``` [详细介绍](/NetCore/RuoVea.DynamicWebApi/RuoVea.DynamicWebApi/README.md ':include:type=md') ## 3、事件总线 RuoVea.ExEvenBus 提供了一个单机版本的事件总线,适用于需要事件驱动架构的应用场景。若需要分布式版本,可参考 CAP。 ````c# Install-Package RuoVea.ExEvenBus ```` [详细介绍](/NetCore/RuoVea.EvenBus/RuoVea.EvenBus/README.md ':include:type=md') ## 4、获取上下文 RuoVea.ExApp 提供了便捷的方法来获取 HttpContext、RootServices 和 User,方便在应用中使用上下文信息。 ````c# Install-Package RuoVea.ExApp ```` [详细介绍](/NetCore/RuoVea.ExApp/RuoVea.ExApp/README.md ':include:type=md') ## 5、缓存帮助类库 RuoVea.ExCache 是一个缓存帮助类库,提供了便捷的缓存操作方法,有助于提高应用性能。 ````c# Install-Package RuoVea.ExCache ```` [详细介绍](/NetCore/RuoVea.ExCache/RuoVea.ExCache/README.md ':include:type=md') ## 6、验证码 RuoVea.ExCaptcha 是一个基于.Net Standard 2.0 的图形验证码模块,灵感来源于 EasyCaptcha 和 SimpleCaptcha。它提供了高效的验证码生成方案,适用于各种应用场景。 ````c# Install-Package RuoVea.ExCaptcha ```` [详细介绍](/NetCore/RuoVea.ExCaptcha/RuoVea.ExCaptcha/README.md ':include:type=md') ## 7、配置文件获取帮助类库 RuoVea.ExConfig 提供了便捷的方法来获取配置文件中的信息,简化了配置管理的过程。 ````c# Install-Package RuoVea.ExConfig ```` [详细介绍](/NetCore/RuoVea.ExConfig/RuoVea.ExConfig/README.md ':include:type=md') ## 8、加密工具类 RuoVea.ExCrypt 集成了多种加密算法,包括 AES、Base64、DES、HMACSHA 系列、MD5、RSA、SHA 系列等,满足不同的加密需求。 集成加密工具类。AES 加解密、Base64加密解密、DESC 加解密、HMACSHA1、HMACSHA256、HMACSHA384、HMACSHA512、机器密钥、MD5加密、RSA 加密、SHA1加密、SHA256、SHA384、SHA512、PBKDF2.Key加密算法。支持简体中文、繁体中文、粤语、日语、法语、英语. ````c# Install-Package RuoVea.ExCrypt ```` [详细介绍](/NetCore/RuoVea.ExCrypt/RuoVea.ExCrypt/README.md ':include:type=md') ## 9、常用常量、接口、实体模型、枚举类库 RuoVea.ExDto 提供了一系列常用的常量、接口、实体模型和枚举,便于在项目中统一管理和使用。 ````c# Install-Package RuoVea.ExDto ```` [详细介绍](/NetCore/RuoVea.ExDto/RuoVea.ExDto/README.md ':include:type=md') ## 10、文件夹文件操作类 RuoVea.ExFile 提供了文件夹和文件操作的工具类,包括 DirFileHelper、FileHelper 和 ZipHelper,方便进行文件管理和压缩/解压操作。 ````c# Install-Package RuoVea.ExFile ```` [详细介绍](/NetCore/RuoVea.ExFile/RuoVea.ExFile/README.md ':include:type=md') ## 11、全局注入拦截 RuoVea.ExFilter 提供了全局的异常日志收集、执行操作日志、参数验证等功能,有助于统一管理应用中的各种操作和异常。 ````c# Install-Package RuoVea.ExFilter ```` [详细介绍](/NetCore/RuoVea.ExFilter/RuoVea.ExFilter/README.md ':include:type=md') ## 12、全局错误日志、操作日志记录 RuoVea.ExGlobal 提供了 web 应用的全局错误日志和操作日志记录功能,有助于监控和分析应用的运行状态。 ````c# Install-Package RuoVea.ExGlobal ```` [详细介绍](/NetCore/RuoVea.ExGlobal/RuoVea.ExGlobal/README.md ':include:type=md') ## 13、Html解析 RuoVea.ExHtml 提供了 Web 操作、HtmlHelper、远程文件下载和 Html 解析等功能,方便处理网页内容。 ````c# Install-Package RuoVea.ExHtml ```` [详细介绍](/NetCore/RuoVea.ExHtml/RuoVea.ExHtml/README.md ':include:type=md') ## 14、雪花漂移算法(唯一标识Id生成) RuoVea.ExIdGen 提供了基于雪花漂移算法的唯一标识 Id 生成方案,支持数据中心 ID 和秒级时间戳。 IdGenerator 订单助手 唯一标识Id生成,IdGenerator 雪花漂移算法(支持数据中心ID和秒级时间戳),雪花漂移算法; 生成数值型Id、生成字符串Id、No 自动生成编号(201008251145409865) ````c# Install-Package RuoVea.ExIdGen ```` [详细介绍](/NetCore/RuoVea.ExIdGen/RuoVea.ExIdGen/README.md ':include:type=md') ## 15、鉴权、认证、JWT扩展帮助类库 RuoVea.ExJwtBearer 提供了 JWT 扩展帮助类库,支持多种认证方式,包括 Jwt 鉴权、Basic 认证、IdentityServer4 Client 认证和 Authing 认证。 ````c# Install-Package RuoVea.ExJwtBearer ```` [详细介绍](/NetCore/RuoVea.ExJwtBearer/RuoVea.ExJwtBearer/README.md ':include:type=md') ## 16、日志记录类 RuoVea.ExLog 提供了日志记录的功能,包括 LogFactory 操作方法和日志格式器 LogFormat,支持多个 Net 版本和 Core 系列版本。 ````c# Install-Package RuoVea.ExLog ```` [详细介绍](/NetCore/RuoVea.ExLog/RuoVea.ExLog/README.md ':include:type=md') ## 17、SqlSugar扩展类库 RuoVea.ExSqlSugar 是 SqlSugar 的扩展类库,提供了更多的数据库操作功能。 ````c# Install-Package RuoVea.ExSqlSugar ```` [详细介绍](/NetCore/RuoVea.ExSugar/RuoVea.ExSugar/README.md ':include:type=md') ## 18、Swagger拓展插件 RuoVea.ExSwagger 是一个 Swagger 拓展插件,只需添加该插件便可轻松使用 Swagger。 ````c# Install-Package RuoVea.ExSwagger ```` [详细介绍](/NetCore/RuoVea.ExSwagger/RuoVea.ExSwagger/README.md ':include:type=md') ## 19、扩展工具类库 RuoVea.ExUtil 是一个 C# 扩展工具类库,提供了丰富的工具方法,包括 Common、OrderNum、链接错误处理、异常信息扩展、类型转换扩展、日期时间扩展、验证扩展等。 c#扩展工具类库; Common、OrderNum 生成 Salt 盐、枚举扩展属性 EnumExtension、 链接错误: ConnctionException、参数错误处理 ParamiterException 、 异常信息扩展 ExceptionEx、异常信息封装类 ExceptionMessage Extensions: 类型转换扩展、日期时间扩展、json序列反序列化、可空 类型、验证扩展、Linq扩展 Const: 汉字及拼音首字母、常用简体汉字、字符串工具方法 时间操作: Time、UnixTime Validate:邮箱、时间、电话、身份证、手机、最大长度、数值、不可 空、网址、微信 xml文件操作 TreeBuildUtil树的构建 字符串验证帮助类 ValidatorUtil:验证输入字符串为数字(带小数)、验证中国电话格式否有效,格式010-85849685、验证输入字符串为电话号码、验证是否是效传真号码、 验证手机号是否合法、验证身份证是否有效、验证是否是有效邮箱地址验证是否只含有汉字、是否有多余的字符 防止SQL注入、是否由数字、2个英文字母或者下划线組成的字串、 由数字、26个英文字母、汉字組成的字串、由数字、26个英文字母組成字串、判断用户输入是否为日期 获取服务器信息 ExMachine 系统Shell命令 ExShell 图片工具类 ExImage 保存二进制流到文件、删除文件夹里面所有的文件、 无损压缩图片 ````c# Install-Package RuoVea.ExUtil ```` [详细介绍](/NetCore/RuoVea.ExUtil/RuoVea.ExUtil/README.md ':include:type=md') ## 20、CorsUrls、IPLimit、SafeIps、Jwt 配置类库 RuoVea.ExWeb 提供了 CorsUrls、IPLimit、SafeIps 和 Jwt 等配置类库,方便进行 Web 应用的配置管理。 ````c# Install-Package RuoVea.ExWeb ```` [详细介绍](/NetCore/RuoVea.ExWeb/RuoVea.ExWeb/README.md ':include:type=md') ## 21、加密服务类 RuoVea.ExPws 集成加密服务工具类。SM2加解密、 SM3加密、 SM4CBC加解密、 SM4ECB加解密、 AES加解密、Base64加密解密、DESC 加解密、HMACSHA1、HMACSHA256、HMACSHA384、HMACSHA512、机器密钥、MD5加密、RSA 加密、SHA1加密、SHA256、SHA384、SHA512、PBKDF2.Key加密算法。支持简体中文、繁体中文、粤语、日语、法语、英语. ````c# Install-Package RuoVea.ExPws ```` [详细介绍](/NetCore/RuoVea.ExPws /RuoVea.ExPws /README.md ':include:type=md') ## 安装教程 所有扩展工具类库均可通过 NuGet 直接引用: ```c# PM> Install-Package RuoVea.Autowired PM> Install-Package RuoVea.DynamicWebApi PM> Install-Package RuoVea.ExEvenBus PM> Install-Package RuoVea.ExApp PM> Install-Package RuoVea.ExCache PM> Install-Package RuoVea.ExCaptcha PM> Install-Package RuoVea.ExConfig PM> Install-Package RuoVea.ExCrypt PM> Install-Package RuoVea.ExDto PM> Install-Package RuoVea.ExFile PM> Install-Package RuoVea.ExFilter PM> Install-Package RuoVea.ExGlobal PM> Install-Package RuoVea.ExHtml PM> Install-Package RuoVea.ExIdGen PM> Install-Package RuoVea.ExJwtBearer PM> Install-Package RuoVea.ExLog PM> Install-Package RuoVea.ExSwagger PM> Install-Package RuoVea.ExSwagger PM> Install-Package RuoVea.ExUtil PM> Install-Package RuoVea.ExWeb ``` 通过这些工具类库,开发者可以更加高效地构建和维护应用程序,减少重复代码,提高代码质量。每个工具类库都提供了详细的文档,帮助开发者快速上手和深入使用。