C#,遍历数据集并显示数据集列中的每条记录

Posted

技术标签:

【中文标题】C#,遍历数据集并显示数据集列中的每条记录【英文标题】:C#, Looping through dataset and show each record from a dataset column 【发布时间】:2013-02-21 12:45:45 【问题描述】:

在 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);
     
 

【问题讨论】:

【参考方案1】:

我相信你的本意是这样的:

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);
    

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

【讨论】:

【参考方案2】:
DateTime TaskStart = DateTime.Parse(dr["TaskStart"].ToString());

【讨论】:

您好,感谢您的回复,现在它只是在最后一行显示所有记录的最后日期? 看来您的 rpt.SetParameterValue("TaskStartDate", TaskStart); 有问题因为你在每一圈设置它,但你在它之外的其他地方使用它。此外,您的格式化日期也不会去任何地方。【参考方案3】:
foreach (DataRow dr in ds.Tables[0].Rows)

    //your code here

【讨论】:

【参考方案4】:
foreach (DataTable table in ds.Tables)

    foreach (DataRow dr in table.Rows)
    
        var ParentId=dr["ParentId"].ToString();
    

【讨论】:

以上是关于C#,遍历数据集并显示数据集列中的每条记录的主要内容,如果未能解决你的问题,请参考以下文章

需要根据 1 列的值设置数据集列中的值

如何遍历 spark 数据集并更新 Java 中的列值?

从集合中随机替换 spark 数据集列值

如何在火花中遍历数据集列?

将两个数据库列连接到一个结果集列

处理非常大的数据集并及时加载