2017-12-17 13 views
-2

文字列「2> 4」歩留まりブール値を評価する文字列から数式を計算し、このように結果を返すことができます。スニペットは、C#であります偽

using System.Data; 
DataTable dta = new DataTable(); 
var veqaa = dta.Compute("2+3",""); 

は、たとえば、そのような機能は、条件を評価することができますあります( "2> 4")はfalseを返しますか?

+1

[C#MSDN Datatable.Computeメソッド](https://msdn.microsoft.com/en-us/library/system.data.datatable.compute(v = vs.110).aspx)を読んでください例と説明..最初にそこから始めてください。 – MethodMan

+0

ああありがとう:) @MethodMan –

+0

ドキュメントを読んでも大丈夫です。 '' 2> 4 "'を渡して、それが何を返すかを見てください。 –

答えて

1

あなたはそれを行うと、より重要なことができ、すべてが正常に動作します。

using (DataTable dt = new DataTable()) 
{ 
    Object check1 = dt.Compute("2 < 4", String.Empty); 
    Console.WriteLine(check1.GetType().ToString()); // System.Boolean 
    Console.WriteLine(check1.ToString()); // True  

    Object check2 = dt.Compute("2 > 4", String.Empty); 
    Console.WriteLine(check2.GetType().ToString()); // System.Boolean 
    Console.WriteLine(check2.ToString()); // False 

    Object check3 = dt.Compute("2 + 4", String.Empty); 
    Console.WriteLine(check3.GetType().ToString()); // System.Int32 
    Console.WriteLine(check3.ToString()); // 6 
} 

MSDNで述べたように、あなたはフィルタリング条件である第二のパラメータを、使用する必要はありません。条件がexpressionパラメータで定義されると、完了です。

関連する問題