博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.NET 表达式计算:Expression Evaluator
阅读量:5927 次
发布时间:2019-06-19

本文共 776 字,大约阅读时间需要 2 分钟。

Expression Evaluator 是一个轻量级的可以在运行时解析C#表达式的开源免费组件。表达式求值应该在很多地方使用,例如一些工资或者成本核算系统,就需要在后台动态配置计算表达式,从而进行计算求值。相比 NCal,还是这个 Expression Evaluator 比较强大,虽然部分功能有重叠。也都能计算常规的数学表达式。

Expression Evaluator 支持的特性有:

  • 支持算术运算符,支持关系运算符,以及逻辑运算符

  • 支持表达式分组和括号,以及递增递减运算符

  • 支持表达式属性访问以及动态类型,支持字符串的+运算

  • 支持数值类型的后缀d/f/m/l/u/ul、

  • 支持隐式表达式,以及成员访问操作符(.)

  • 支持一些默认的类型,如double, float, char, string, DateTime, Convert, Math

  • 支持foreach循环

  • 。。。等等,更多功能还期待你的使用和发现

简单的数值表达式就不演示了,看一个比较有新意的代码:

class MyClass{     public string[] myExternalString;     public int x;}  var v = new MyClass();v.myExternalString = new string[] { "Hello", "there", "World!" };v.x = 2;//关键点,注册符号vregistry.RegisterSymbol("v", v);//动态计算属性//返回结果是"there",因为v.x=2,2/2=1,所以返回索引1的值"v.myExternalString[v.x/2]"

 

项目主页:

转载于:https://www.cnblogs.com/screes/p/6050592.html

你可能感兴趣的文章
简单实现TCP下的大文件高效传输
查看>>
oracle系统包——dbms_random用法
查看>>
生成不重复的随机数的方法
查看>>
使用ActivityManager实现进程管理
查看>>
安装包部署项目简述
查看>>
HipHop PHP简介(转)
查看>>
MySQL-LAST_INSERT_ID();使用注意事项
查看>>
【转】【WPF】 WPF 调用API修改窗体风格实现真正的无边框窗体
查看>>
uboot之run_command简单分析
查看>>
[emacs] org-mode的一些小技巧
查看>>
Android UI(一)Layout 背景局部Shape圆角设计
查看>>
jqueryMobile 动态添加元素,展示刷新视图方法
查看>>
SQL注入小结
查看>>
微信公众平台增加批量获取用户基本信息接口
查看>>
jQuery遍历table中间tr td并获得td价值
查看>>
oracle-odu小试牛刀--恢复drop表的数据
查看>>
C/C++跨平台的的预编译宏
查看>>
海哥:T2C时代的到来了,那么什么叫T2C?
查看>>
解决 maven 项目启动 提示 class not find
查看>>
poj3642 Charm Bracelet(0-1背包)
查看>>