2 Star 5 Fork 1

msdn5君临 / Msdn5.Framework

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

Msdn5.Framework

介绍

涵盖时间处理、字符串转换、JSON处理、表达式树、常用加解密、文件读取写入等等常用扩展库,使开发更便捷,不用编写太多重复代码

项目最低环境

NetFramework 4.5 与 NetCore3.1

安装教程

  1. 拉取回代码直接引用工程即可

使用说明

除极个别外需要创建实体,包括但不限于(DatetimeEx、CipherOption、ExpressionComparer、FileExtend) 其他全是封装的扩展方法.

#ConfigHelper (配置/文件/读取写入)
Fx4.5下依赖System.Management读 *.appconfig文件中的 ConnectionString与AppSetting并且可将当前结果转Int与Bool
并且实现读写文件(返回byte[]与字符串)

#CustomExpression (自定义表达式) web*
可动态拼接并且生成表达式

#DataApiParam (按照固定格式搜索数据,配合CustomExpression) web*

#DataCenterParam (数据传输的基本格式) web*

#RepMsg (通用回复消息) web*

#QueryItem 后续将移除 web*
搜索时的类,兼容老程序,新的已拆分为  DataApiParam DataCentreParam

web* 在web时常用


#DateTimeExHelper(关于时间的扩展)
 string str = DateTime.Now.ToStr(); // 获取当前时间的标准字符串(带标准符号 秒级) 格式 yyyy-MM-dd HH:mm:ss
 
 var plist = DateTime.Now.GetPastDays(7); //   获取过去几日的集合(n天前至今所有的日期) 注意,集合包含今日.(最后一天为今天) 只取日期部分 GetPastDays().Select(v=>v.StartTimeDate).ToArray()

 var flist = DateTime.Now.GetFutureDays(7); // 获取未来几日的集合(今天至未来间所有的日期)注意,默认时间包含今日.(第一天为今天) 

 DateTime dt = "2020年01月03日".ToDateTime(); //一个字符串时间转换成DateTime对象
 DateTime dt1 = "2020-01-03".ToDateTime();

 DatetimeEx dtx = "2023-12-26".ToDateTimeEx(); // 一个字符串时间转换成DateTimeEx对象DateTimeEx 包含开始时间 例:2023-12-26 00:00:00,结束时间2023-12-26 23:59:59
 //当然可以传递一个DateTime/字符串/也可以指定开始时间与结束时间

 string sp = DateTime.Now.ToTimeStamp10(); //时间戳相互转换
 string sp13 = DateTime.Now.ToTimeStamp13();
 DateTime dt2 = sp13.TimeStampToDateTime();

#EnumHelper (获取一个枚举的所有Name)

#ExceptionExtend (获取异常的Message含InnerException)

#ExpressionComparer (表达式比较,继承IEqualityComparer)
//可以比较两个类/类中的某个属性(调用自身比较)
new ExpressionComparer <实体类型, 实体类型或object>(x =>x.属性或字段))
例:
class Test{
	public int Id {get;set;}
	public string Name {get;set;}
}
List<Test> tlist = new List<Test>();
tlist.Add(new Test(){Id=1,Name="t2"});
tlist.Add(new Test(){Id=2,Name="t2"});
tlist.Distinct<Test>(new ExpressionComparer <Test,string>(x =>x.Name)));//比较Test类中的Name属性,不仅仅在去重使用,任何比较的地方都可以调用
 

#FileExtend  一个File扩展类(只读的形式打开文件,不锁定文件)

#GlobalReferences 提供一些全局引用(其他库依赖)

#JsonHelper (依赖Newtonsoft.Json 提供转换)
var json="{user = 'admin',pass='123456'}".JsonTo();//Json文本直接转JObject;另包含JsonTo<T>
var obj = new {user="admin",pass="123456"}.ToJson();也可以任意对象转json文本.

#MachineCode 获取机器相关信息(CPU/硬盘/内存/)

#NumHelper 数字的一些常用封装(随机生成double decimal)

#ObjectHelper 
"111".Convert<double>();
"True".Convert<bool>();
还有一些反射操作,如读写某个类的某个属性



#RandomString 生成随机字符/随机数值,随机数值数组/汉字/生僻字


#StringHelper  一堆String类型的扩展方法
EqualsIgnoreCase //字符串比较不区分大小写
Split/SplitEx 常用封装不用编写StringSplitOptions
IsNullOrEmpty 系统 IsNullOrWhiteSpace 的结果 判断是否为空字符串
NotNullOrEmpty 判断不为空,对IsNullOrEmpty取反
OpenUrl 打开一个URL
OpenDir 打开一个文件夹
Join<T> 任意数组,组合成字符串
HTML编码/解码
URL编码/解码
Base64编码/解码
Unicode编码/解码
向左/向右填充数据
各种字符串转Byte数组/数组反转字符串
"一些字符串".UrlEncoding(); //对字符串进行URL编码
"一些字符串".ToBytes([hex,base64,encoding]);//转换成字节数组
MIT License Copyright (c) 2023 msdn5君临 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

涵盖时间处理、字符串转换、JSON处理、表达式树、常用加解密、文件读取写入等等常用扩展库,使开发更便捷,不用编写太多重复代码 展开 收起
C#
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/msdn5/Msdn5.Framework.git
git@gitee.com:msdn5/Msdn5.Framework.git
msdn5
Msdn5.Framework
Msdn5.Framework
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891