forget where you turned around, mark.
//// <summary>///Dynamic Evaluation/// </summary> Public classevaluator{/// <summary>///evaluates, throws an exception if an expression is faulted/// </summary>/// <param name= "statement" >expressions, such as "1+2+3+4"</param>/// <returns>Results</returns> Public Static ObjectEval (stringstatement) {return_evaluatortype.invokemember ("Eval", BindingFlags.InvokeMethod,NULL, _evaluator,New Object[] {statement});}StaticEvaluator () {//constructing the compiled driver code for JScriptCodeDomProvider Provider = Codedomprovider.createprovider ("JScript"); CompilerParameters parameters;parameters=Newcompilerparameters ();p arameters. GenerateInMemory=true; CompilerResults Results;results=provider.compileassemblyfromsource (parameters, _jscriptsource); Assembly Assembly=Results.compiledassembly;_evaluatortype= assembly. GetType ("Evaluator"); _evaluator=Activator.CreateInstance (_evaluatortype);}Private Static Object_evaluator =NULL;Private StaticType _evaluatortype =NULL;//// <summary>///JScript Code/// </summary>Private Static ReadOnly string_jscriptsource =@"class Evaluator{public function eval (expr:string): String {return Eval (expr);}}";}
C # compilation Js-evaluator