// call .V what is a static extension method// you get a visitor object for ordervarvisitor=order.V();
visitor.ForEach(context=>{
varname=context.Name;
varvalue=context.Value;
Console.Writeline($"{name}: {value}");
}).Run();
// you can also make it into one lineorder.V().ForEach(c=>Console.Writeline($"{c.Name}: {c.Value}")).Run();
// or using quick styleorder.FormatToString();
C#工具包 Newbe.Claptrap 0.2.10 发布,更花里胡哨
Newbe.Claptrap 0.2.10 发布,更花里胡哨。
更新内容
我们增加了简体中文的项目说明:
https://gitee.com/yks/Newbe.ObjectVisitor/blob/main/README_zh_Hans.md
现在,你可以通过上下文修改属性的值了:
现在,支持多次 ForEach 操作:
现在,支持更多花里胡哨的属性条件判断:
基准测试
我们更新了两个基准测试:
详细的数据可以查看项目首页,此处仅给出图表说明。
文章
新增了一些相关的经验文章:
场景样例
我们增加了一些可以使用该库实现功能的场景和做法说明:
IEnumerable<int>
的所有属性求和。可以参阅《Newbe.ObjectVisitor 样例 1》
简要说明
Newbe.ObjectVisitor 帮助开发者可以用最简单的最高效的方式访问一个普通 class 的所有属性。从而实现:验证、映射、收集等等操作。
例如, 在你的代码中有这样一个简单的类。
你想要将这个类所有的属性和值都打印出来,那么你可以采用反射来完成:
如果你使用这个类库,则可以采用以下方式来实现一样的效果:
那我为什么要这样做?
GitHub 项目地址:https://github.com/newbe36524/Newbe.ObjectVisitor
Gitee 项目地址:https://gitee.com/yks/Newbe.ObjectVisitor