System.Linq.Dynamic字符串转委托

网友投稿 395 2022-08-19

System.Linq.Dynamic字符串转委托

以前一直想着有没有一个方法能够把字符串直接转化成函数的,刚好有需求就找了下,还真有。

微软地址:https://docs.microsoft.com/en-us/previous-versions/bb894665(v=msdn.10)?redirectedfrom=MSDN

一、安装

NuGet程序管理器,System.Linq.Dynamic

二、应用与性能:

效果一样,但性能开销不同,各执行1000次循环:

尝试其他方法,ParseLambda ,把条件单独出来获得函数委托,再调用Linq的Where。

var lambda = DynamicExpression.ParseLambda("name.StartsWith(@0)", "1");

var fun = expfun.Compile();

list.Where(s => fun(s)).ToList();

运行1000次看下,虽然和原生的还有差距,但已经在可以接受的范围内了。

三、其他方法:

有时string转成函数执行还是很方便的,用这个做一个计算器小程序的话,运算符解析什么的就完全不需要考虑了。

参考链接:

https://cnblogs.com/David-Qian/archive/2009/01/22/1379596.html

https://blog.csdn.net/xuchen_wang/article/details/90749743

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:C# 基础知识系列- 16 开发工具篇(c罗)
下一篇:C# 9.0 新特性预览 - 类型推导的 new(c罗)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~