24

在 C# 中,我试图遍历我的数据集以显示来自特定列的每一行的数据。我希望在列名“TaskStart”下获取每个日期并将其显示在报告中,但它只显示所有行的第一行的日期,有人可以帮忙吗?

 foreach (DataTable table in ds.Tables)
 {

     foreach (DataRow dr in table.Rows)
     {
         DateTime TaskStart = DateTime.Parse(
             ds.Tables[0].Rows[0]["TaskStart"].ToString());
         TaskStart.ToString("dd-MMMM-yyyy");
         rpt.SetParameterValue("TaskStartDate", TaskStart);
     }
 }
4

4 回答 4

24

我相信您的意图更多是这样:

foreach (DataTable table in ds.Tables)
{
    foreach (DataRow dr in table.Rows)
    {
        DateTime TaskStart = DateTime.Parse(dr["TaskStart"].ToString());
        TaskStart.ToString("dd-MMMM-yyyy");
        rpt.SetParameterValue("TaskStartDate", TaskStart);
    }
}

您总是访问数据集中的第一行。

于 2013-03-06T16:06:27.370 回答
14
DateTime TaskStart = DateTime.Parse(dr["TaskStart"].ToString());
于 2013-03-06T16:06:03.213 回答
8
foreach (DataRow dr in ds.Tables[0].Rows)
{
    //your code here
}
于 2014-05-18T12:14:36.947 回答
7
foreach (DataTable table in ds.Tables)
{
    foreach (DataRow dr in table.Rows)
    {
        var ParentId=dr["ParentId"].ToString();
    }
}
于 2014-07-01T08:21:31.370 回答