2012-02-15 17 views
0

私は、次のコードブロックから正しい結果を得ることができません。dataset.Table [0] .Compute(文字列式、文字列フィルタ)の正しいパラメータを設定するにはどうすればよいですか?

object ob = ds_bug.Tables[0].Compute("Count(id)",str_vertical +"= '"+"' and "+str_horizontal+" = '"+first_row.Cells[j].Text.ToString()+"'");// ds_bug has been filled some data. 

str_verticalとstr_horizo​​ntalはds_bug.Tablesから2つのフィールドは、[0]であり、私はデバッグするとき、その値が正しいすぎている見ることができますコード。

"a = '##'、b = '##' 'のような文字列でフィルタを設定すると問題はありますか?私はfirst_row.Cells[j].Text.ToString()はあなたが以前に照会してきた静的な値であるので、あなたがそれを宣言することを前提とし

答えて

1

まずあなたはそれがより明確になり、メソッド呼び出しと表現し、フィルタの初期化を、分割する必要がありますlike:

String firstRowCellsJText = first_row.Cells[j].Text.ToString(); 
String expression="Count(id)"; 
String filter = "str_vertical=str_horizontal + " + firstRowCellsJText; 
object ob = s_bug.Tables[0].Compute(expression,filter); 
+0

ありがとう、私は今それを修正しました。私はプログラミングの経験はあまりありません。あなたのコードブロックははるかに明確になり、私はそのようにプログラムします。 – Hession