日期:2014-05-18  浏览次数:20982 次

如何把一字符串变为逻辑表达式并返回结果?
举个简单的例子

一个字符串string strExpress=“a>b”
a和b分别是一变量
想在程序中判断strExpress的返回值?
如何实现?

------解决方案--------------------
bool _Value = (bool)new DataTable().Compute("1>2","");

复杂点可以使用CodeDom
------解决方案--------------------
探讨
  bool _Value = (bool)new DataTable().Compute("1>2","");

复杂点可以使用CodeDom

------解决方案--------------------
使用javascript中的eval函数:
1、添加对程序集Microsoft.JScript和Microsoft.Vsa的引用
2、object result = Microsoft.JScript.Eval.JScriptEvaluate(strExpress, Microsoft.JScript.Vsa.VsaEngine.CreateEngine());
------解决方案--------------------
偶记得 Compontone 公司的套件里有一表达式组件,可以试试。