【技术干货】开源库 Com.Gitusme.Net.Extensiones.Core 的使用

目录

1、项目介绍

2、为项目添加依赖

3、代码中导入命名空间

4、代码中使用

[示例 1:string转换](#示例 1:string转换)

[示例 2:object转换](#示例 2:object转换)


1、项目介绍

Com.Gitusme.Net.Extensiones.Core是一个.Net扩展库。当前最新版本1.0.4,提供了常见类型转换,可减少代码量,并提高编程效率。基于.Net Standard 2.0开发,支持windows、linux、IOS等多平台。

2、为项目添加依赖

打开NuGet包管理,搜索"Com.Gitusme.Net.Extensiones.Core"关键字,安装最新版本。

3、代码中导入命名空间

using Com.Gitusme.Net.Extensions.Core;

4、使用示例

示例 1:string转换

// Example 1: 判断string是否为null

string str = null;

if (str.IsNullOrEmpty())

{

System.Console.WriteLine("Example 1 输出结果:" + "null");

}

// Example 2: 判断string是否匹配正则

string hello = "Hello, gitusme";

var isMatch = hello.IsMatch(@"Hello, \w+");

System.Console.WriteLine("Example 2 输出结果:" + isMatch);

// Example 3: 将string转换为Json实体对象

string json = "{\"Id\":0,\"Name\":\"Json Object\"}";

var jsonObj = json.ToJsonObject<MyJsonObject>();

System.Console.WriteLine("Example 3 输出结果:" + jsonObj.Name);

// Example 4: 将string转换为Xml实体对象

string xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" +

"<root xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\\" id=\"0\">" +

"<name>Xml Object</name>" +

"</root>";

var xmlObj = xml.ToXmlObject<MyXmlObject>();

System.Console.WriteLine("Example 4 输出结果:" + xmlObj.Name);

// Example 5: 将string转换为DateTime

string date = "2023/10/22 21:32:00";

var dateTime = date.ToDateTime();

System.Console.WriteLine("Example 5 输出结果:" + dateTime.ToString());

// Example 6: 将string转换为字符数组

string gitusme = "gitusme";

var array = gitusme.ToCharArray();

System.Console.WriteLine("Example 6 输出结果:" + array);

// Example 7: 将string转换为int32

string intStr = "100";

var intValue = intStr.ToInt32() + 10;

System.Console.WriteLine("Example 7 输出结果:" + intValue);

// Example 8: 将string转换为decimal

string decimalStr = "3.141592653589793238462643383279502884197";

var decimalValue = decimalStr.ToDecimal();

System.Console.WriteLine("Example 8 输出结果:" + decimalValue);

// Example 9: 将string转换为uri

string uriStr = "https://github.com/gitusme/Com.Gitusme.Net.Extensiones";

var uriValue = uriStr.ToUri();

System.Console.WriteLine("Example 9 输出结果:" + uriValue.Host);

// Example 10: 将string转换为color

string colorStr = "#aabbcc";

var colorValue = colorStr.ToColor();

System.Console.WriteLine("Example 10 输出结果:" + colorValue);

运行结果:

示例 2:object转换

// Example 1: 判断对象是否为null

MyObject obj = null;

if (obj.IsNull())

{

System.Console.WriteLine("Example 1 输出结果:" + "null");

}

// Example 2: 对象为null的时候,返回传入的默认值

var def = obj.OrDefault(new MyObject());

System.Console.WriteLine("Example 2 输出结果:" + def);

// Example 3: 如果对象不为null,则执行传入的Action行为

def.IfPresent((it) =>

{

System.Console.WriteLine("Example 3 输出结果:" + it.Name);

});

// Example 4: 将Xml对象转换为Xml文本

var xmlObj = new MyXmlObject();

string xml = xmlObj.ToXml();

System.Console.WriteLine("Example 4 输出结果:" + xml);

// Example 5: 将Json对象转换为Json文本

var jsonObj = new MyJsonObject();

string json = jsonObj.ToJson();

System.Console.WriteLine("Example 5 输出结果:" + json);

运行结果:

您能够认真学习完本篇,实属不易,欢迎点赞加关注,收藏交流和探讨。

相关推荐
冬奇Lab7 小时前
一天一个开源项目(第37篇):awesome-selfhosted - 自托管软件资源集合
开源·自动化运维·资讯
冬奇Lab19 小时前
一天一个开源项目(第36篇):EverMemOS - 跨 LLM 与平台的长时记忆 OS,让 Agent 会记忆更会推理
人工智能·开源·资讯
冬奇Lab19 小时前
OpenClaw 源码深度解析(一):Gateway——为什么需要一个"中枢"
人工智能·开源·源码阅读
Scout-leaf1 天前
WPF新手村教程(三)—— 路由事件
c#·wpf
用户298698530141 天前
程序员效率工具:Spire.Doc如何助你一键搞定Word表格排版
后端·c#·.net
牧马人win1 天前
SmartDapper.Repository
.net
HelloGitHub1 天前
《HelloGitHub》第 119 期
开源·github
冬奇Lab2 天前
一天一个开源项目(第35篇):GitHub Store - 跨平台的 GitHub Releases 应用商店
开源·github·资讯
Bigger2 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
mudtools2 天前
搭建一套.net下能落地的飞书考勤系统
后端·c#·.net