首页 [ 课程设计 ] VIYI.UTILC#的常用工具扩展
一键分享

VIYI.UTILC#的常用工具扩展

  • 免费

2023-07-18 18:05:07

Viyi.UtilC#的常用工具扩展

  • 源码类型: B/S
  • 开发环境: VS2022 + SQL2019
  • 开发语言: C#
  • 标签: 工具扩展
  • 评分:
收藏 3 次|关注 32 次|下载 0 次

免费


交付物: 源码包
    商家已实名认证
  • 分享者:coder***
  • 访问次数:   6612 次
  • 源码数量:   766 套
  • 通过比率:   92%
  • 活跃于:   三个月前
  • TEL:   17*******71
  • 最新IP属地:海口市
  • 微信扫码咨询
.net
  • 51Aspx源码必读.txt[2KB]
  • cspell.json[178B]
  • from.jpg[11KB]
  • LICENSE[9KB]
  • Viyi.Util.sln[2KB]
  • 最新Asp.Net源码下载.url[123B]

源码介绍

源码参数

  • 源码类别:【课程设计】
  • 源码类型:B/S
  • 适合人群: 菜鸟
  • 授权类型:免费版
  • 开发语言:C#
  • 数据库:SQL2019
  • 源码大小:6.15MB
  • 相关网址: 【免费浏览】
  • 源码指数:
  • 完整度:
  • 1.png
  • 2.png
  • 3.png
  • 4.png
  • 1.png
  • 2.png
  • 3.png
  • 4.png
  • Aspx.Query.CodeImageQueryModel
  • Aspx.Query.CodeImageQueryModel
  • Aspx.Query.CodeImageQueryModel
  • Aspx.Query.CodeImageQueryModel

一、源码描述

Viyi.UtilC#的常用工具扩展

环境:VS2022 

二、功能介绍

主要特性 (Features)

扩展 object,

参考 Kotlin,提供了 .Also() 和 .Let() 扩展,同时支持它们的异步版本;

提供 ToXxxx() 和 ConvertTo() 方法,是 System.Convert 类中相关功能的去异常封装;

提供 As() 方法弥补 as 关键字不能应用于结构体 (struct) 类型的问题;

扩展 Linq (Enumerable),

提供 ForEach() / ForEachAsync 扩展;

注:Viyi.Util 目前不支持 IAsyncEnumerable,请使用 System.Linq.Async。

提供 AsToArray() 和 AsToList() 先尝试 as 操作,最大避免重新生成数组或列表对象;

为 .NET6 以下框架提供 MaxBy() 和 MinBy();

为 List<T> 和 T[] 分别提供 Shuffle() 扩展用来打乱其内部元素的顺序;

ViyiEnumerable<T>.Of(params T[]) 从一组单个对象创建 IEnumerable<T>;

扩展 boolean

it.Then(),if / if ... else ... 的表达式形式;

it.Else(),if not 的表达式形式;

it.Then(fnThen, fnElse),? : 的函数调用形式;

ViyiRandom 提供随机数工具

ViyiRandom.Create() 创建随机数据发生器 (Random)

在 netstandard2.1 和 net6 中使用 Random.Shared 来产生随机种子,在 netstandard2.0 中使用类似的方式,通过一个静态且线程安全的 Random 对象来产生随机种子。

ViyiRandom.RandomIndexes() 产生一组以 0 开始的随机序数,可用于产生顺序随机的数据

EnumHelper 为枚举类型提供工具方法

EnumHelper.EnumerateWith() 将枚举中定义的枚举值转换为指定对象的 IEnumerable;

EnumHelper.GetDescription() 获取枚举值的 DescriptionAttribute 描述信息;

EnumHelper.EnumerateWithDescription() 与 EnumerateWith()类似,但会去分析 DescriptionAttribute 属性,结果保存在 EnumEntry 对象中;

EnumHelper.Enumerate() 得到 IEnumerable<KeyValuePair>;

EnumHelper.ToNameValueCollection() 得到 NameValueCollection(可通过参数交换 Key-Value)

对 Compare 和 Equiality 的支持

LambdaCompare 可以通过 Lambda 来产生 IComparer<T> 对象,避免定义类;

LambdaEqualityComparer 通过 Lambda 产生 IEqualityComparer<T> 对象,避免定义类;

三、注意事项

选中项目ctrl+F5运行或者项目右键Run Tests。

责任编辑:超级美少女

下载记录(Only Recent 100)

用户名 推荐指数 下载时间

源码评论

单击更换

评论列表

全部评论
  • 暂无评论 …

最近更新

      下载排行