0

queryDataTableその中にデータがあり、行がその単語と矛盾していることがチェックされた場合、その行全体がextractedData..に追加されます。ただし、現時点では、データテーブルに追加される行は2つだけですがextractedData、データを検査すると22があります。それに追加された行は、このコードが以下にある理由があります

DataTable dt = new DataTable();

for (int k = 0; k < queryDataTable.Rows.Count; k++)
{

    string row = "";
    string test = queryDataTable.Rows[k][0].ToString();
    bool check = queryDataTable.Rows[k][0].ToString().StartsWith(queryString);
    if (check)
    {
        int errorcheck = k;
        extractedData.ImportRow(queryDataTable.Rows[errorcheck]);

    }
}

最初のデータテーブルの特定のインデックスにのみ行を追加するにはどうすればよいですか?

4

2 に答える 2

0

行全体をチェックしたい場合は、次の手順でこのコードを機能させることはできません。

queryDataTable.Rows[k][0].ToString().StartsWith(queryString);

k行の最初の列のみをチェックします。まず、このよりコンパクトなコードを使用できます。

DataTable dt = new DataTable();
for (DataRow r in dt.Rows)
{
   if(r[0].startsWith(queryString))
   {
      extractedData.ImportRow(r);
   }
}

if統計は、各行の列0のみをチェックします。あなたがしたいチェックを私に指定した場合、私はこのコードを変更するか、linqクエリを作成することを試みることができます。

于 2012-12-06T08:52:14.333 に答える