C# 在C中向DataTable添加DataRow对象#
我试图在数据库中循环查找具有日期范围的特定行。 每当我尝试使用DataTable.Import(DataRow)时,它都会添加一个没有值的新行。 如何将数据行“导入”到数据表中? 这是循环,谢谢C# 在C中向DataTable添加DataRow对象#,c#,datatable,C#,Datatable,我试图在数据库中循环查找具有日期范围的特定行。 每当我尝试使用DataTable.Import(DataRow)时,它都会添加一个没有值的新行。 如何将数据行“导入”到数据表中? 这是循环,谢谢 public DataTable FilterDataTableByDates(DataTable td, DateTime from, DateTime to) { DataTable tempTd = new DataTable(); fore
public DataTable FilterDataTableByDates(DataTable td, DateTime from, DateTime to)
{
DataTable tempTd = new DataTable();
foreach (DataRow dr in td.Rows)
{
long ticks = Convert.ToInt64(dr["cpd_date"].ToString());
if (ticks > from.Ticks && ticks < to.Ticks)
{
tempTd.ImportRow(dr);
}
}
return tempTd.Copy();
}
公共DataTable筛选器DataTableByDates(DataTable td、DateTime from、DateTime to)
{
DataTable testd=新DataTable();
foreach(td.行中的数据行dr)
{
长刻度=Convert.ToInt64(dr[“cpd_date”].ToString());
如果(滴答声>从.ticks&&ticks<到.ticks)
{
诱惑。进口(dr);
}
}
返回诱惑的.Copy();
}
您可以使用Add方法将数据行从一个数据表复制到另一个数据表:
tempTd.Rows.Add(dr.ItemArray);
即使您的方法也可以工作,但您必须从原点创建数据表:
DataTable tempTd = td.Clone();
使用该方法,您可以创建一个与原始数据表具有相同结构的新数据表,然后可以导入其中的行
因此,您的完整方法将成为:
public DataTable FilterDataTableByDates(DataTable td, DateTime from, DateTime to)
{
DataTable tempTd = td.Clone();
foreach (DataRow dr in td.Rows)
{
long ticks = Convert.ToInt64(dr["cpd_date"].ToString());
if (ticks > from.Ticks && ticks < to.Ticks)
{
tempTd.ImportRow(dr);
}
}
return tempTd.Copy();
}
公共DataTable筛选器DataTableByDates(DataTable td、DateTime from、DateTime to)
{
DataTable testd=td.Clone();
foreach(td.行中的数据行dr)
{
长刻度=Convert.ToInt64(dr[“cpd_date”].ToString());
如果(滴答声>从.ticks&&ticks<到.ticks)
{
诱惑。进口(dr);
}
}
返回诱惑的.Copy();
}