我的當前代碼循環遍歷DataTable對象的特定列的所有行。我希望它只能循環到最後的第二個位置。我該怎麼做 ?如何修改我的代碼 - 如何循環到一個DataTable的第n行?
我知道這可以通過for循環而不是我的foreach完成。但是,我不知道如何獲取行數,然後基於索引逐行迭代。那就是我需要幫助的地方。
public void Main()
{
OleDbDataAdapter oleDA = new OleDbDataAdapter();
DataTable dt = new DataTable();
DataColumn col = null;
DataRow row = null;
string strCols = null;
oleDA.Fill(dt, Dts.Variables["ExecuteSQLTask_ResultSet"].Value);
col = dt.Columns["AColumInDataTable"];
foreach (DataRow row_ in dt.Rows)
{
row = row_;
strCols = strCols + row[col.Ordinal].ToString() + ", ";
}
strCols = strCols.Substring(0, strCols.Length - 2);
MessageBox.Show("Rows of a column contain - " + strCols);
Dts.TaskResult = (int)ScriptResults.Success;
}
您使用了標籤'for-loop'。這應該是一個提示。 :-) – LarsTech
@LarsTech - 是的,我知道。但是,我不知道如何獲取行數,然後基於索引逐行迭代。那就是我需要幫助的地方。 – Steam
如果這是你的意思,你可以直接訪問第n行而不循環。 dt.Rows [n-1] – Tarik