風之力

导航

C#中計算字符串類型的表達式的值

方法一:

  用Microsoft.Vsa方法

 

代码
        string Expression = "var result:int =0;result==1?\"成功\":\"失败\"";

        Microsoft.JScript.Vsa.VsaEngine ve 
= Microsoft.JScript.Vsa.VsaEngine.CreateEngine();

        Console.WriteLine(Microsoft.JScript.Eval.JScriptEvaluate(Expression, ve));

 

 

方法二:

  用Javascript中的eval方法.

 

代码
        /// <summary>
        
/// 引用com组件Microsoft Script Control
        
/// %SystemRoot%\system32\msscript.ocx        
        
/// <param name="Expression"></param>
        
/// <returns></returns>
        public static string Eval(string Expression)
        {
            
string strResult = null;
            
try
            {
                MSScriptControl.ScriptControlClass jscript 
= new MSScriptControl.ScriptControlClass();
                jscript.Language 
= "JScript";          

                strResult 
= jscript.Eval(Expression).ToString();
            }
            
catch (Exception ex)
            {
                Debug.Fail(ex.Message);        

            }
            
return strResult;
        }


 

 

posted on 2010-04-07 16:55  ZY.Zhou  阅读(280)  评论(0编辑  收藏  举报