我需要评估一个在C#中作为字符串呈现给我的数学表达式.示例noddy但是得到了字符串作为表达式的点.
我需要求值然后填充一个int.
C#中没有Eval(),就像其他langugaes一样......
String myString = "3*4";
Run Code Online (Sandbox Code Playgroud)
编辑:
我在VS2008上
试过Microsoft.JScript.=已弃用的方法(但仍然符合 - 警告)
但是,我已经使用的Microsoft.JScript DLL工作了
public object InvokeMember(string name,BindingFlags invokeAttr,Binder binder,object target,object [] args);
抱怨缺少";" 去搞清楚...
编辑2
解决方案 - 是codeDom之一 - 因为没有安全问题,所以它工作 - 只有我才能运行代码.非常感谢回复......
和新龙书的链接真棒
编辑3
Matt dataTable.Compute()也有效 - 对于安全意识更好.(注明参数检查)
c# ×1