for (int i = 0; i < ds1.Tables[0].Rows.Count; i++)
{
{
//以下代表一行数据
NewRow["DEP_ID"] = 111;
NewRow["STAT_DATE"] = ds1.Tables[0].Rows[i]["FDTMDATE"].ToString().Replace(" 0:00:00", "");
NewRow["LOT"] = ds1.Tables[0].Rows[i]["FSTRSORT"].ToString();
NewRow["TEAM_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGREGULARID"].ToString());
NewRow["TEC_EQU_ID"] = 0;// int.Parse(ds1.Tables[0].Rows[i]["FLNGMACHINEID"].ToString());
NewRow["MAT_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGITEMID"].ToString());
NewRow["MAT_ENER_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGTOBACCOID"].ToString());
NewRow["QTY"] = double.Parse(ds1.Tables[0].Rows[i]["FSTRSUM"].ToString()) + double.Parse(ds1.Tables[0].Rows[i]["FDBLWEIGHT"].ToString()); dt.Rows.Add(NewRow);
}该行已经属于此表。是SQL语句错误还是程序语句错误? }
{
{
//以下代表一行数据
NewRow["DEP_ID"] = 111;
NewRow["STAT_DATE"] = ds1.Tables[0].Rows[i]["FDTMDATE"].ToString().Replace(" 0:00:00", "");
NewRow["LOT"] = ds1.Tables[0].Rows[i]["FSTRSORT"].ToString();
NewRow["TEAM_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGREGULARID"].ToString());
NewRow["TEC_EQU_ID"] = 0;// int.Parse(ds1.Tables[0].Rows[i]["FLNGMACHINEID"].ToString());
NewRow["MAT_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGITEMID"].ToString());
NewRow["MAT_ENER_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGTOBACCOID"].ToString());
NewRow["QTY"] = double.Parse(ds1.Tables[0].Rows[i]["FSTRSUM"].ToString()) + double.Parse(ds1.Tables[0].Rows[i]["FDBLWEIGHT"].ToString()); dt.Rows.Add(NewRow);
}该行已经属于此表。是SQL语句错误还是程序语句错误? }
//以下代表一行数据
前面加一行:
DataRow NewRow = new DataRow();
DataRow NewRow ;
for (int i = 0; i < ds1.Tables[0].Rows.Count; i++)
{
NewRow =dt.NewRow();
{
//以下代表一行数据
NewRow["DEP_ID"] = 111;
NewRow["STAT_DATE"] = ds1.Tables[0].Rows[i]["FDTMDATE"].ToString().Replace(" 0:00:00", "");
NewRow["LOT"] = ds1.Tables[0].Rows[i]["FSTRSORT"].ToString();
NewRow["TEAM_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGREGULARID"].ToString());
NewRow["TEC_EQU_ID"] = 0;// int.Parse(ds1.Tables[0].Rows[i]["FLNGMACHINEID"].ToString());
NewRow["MAT_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGITEMID"].ToString());
NewRow["MAT_ENER_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGTOBACCOID"].ToString());
NewRow["QTY"] = double.Parse(ds1.Tables[0].Rows[i]["FSTRSUM"].ToString()) + double.Parse(ds1.Tables[0].Rows[i]["FDBLWEIGHT"].ToString()); dt.Rows.Add(NewRow);
}
}
int count = ds1.Tables[0].Rows.Count; //实现取得count,不要每次再去计算。
for (int i = 0; i < count; i++)
{
DataRow = dt.NewRow(); //注意:不是new DataRow。
//以下代表一行数据
NewRow["DEP_ID"] = 111;
NewRow["STAT_DATE"] = ds1.Tables[0].Rows[i]["FDTMDATE"].ToString().Replace(" 0:00:00", "");
NewRow["LOT"] = ds1.Tables[0].Rows[i]["FSTRSORT"].ToString();
NewRow["TEAM_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGREGULARID"].ToString());
NewRow["TEC_EQU_ID"] = 0;// int.Parse(ds1.Tables[0].Rows[i]["FLNGMACHINEID"].ToString());
NewRow["MAT_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGITEMID"].ToString());
NewRow["MAT_ENER_ID"] = int.Parse(ds1.Tables[0].Rows[i]["FLNGTOBACCOID"].ToString());
NewRow["QTY"]
= double.Parse(ds1.Tables[0].Rows[i]["FSTRSUM"].ToString()) + double.Parse(ds1.Tables[0].Rows[i]["FDBLWEIGHT"].ToString());
dt.Rows.Add(NewRow);
}
更好的方法是用foreach而不是 for(...)。foreach(DataRow row in ds1.Tables[0].Rows)
{
DataRow NewRow= dt.NewRow(); //注意:不是new DataRow。
//以下代表一行数据
NewRow["DEP_ID"] = 111;
NewRow["STAT_DATE"] = row["FDTMDATE"].ToString().Replace(" 0:00:00", "");
NewRow["LOT"] = row["FSTRSORT"].ToString();
NewRow["TEAM_ID"] = row["FLNGREGULARID"].ToString());
NewRow["TEC_EQU_ID"] = 0;// int.Parse(row["FLNGMACHINEID"].ToString());
NewRow["MAT_ID"] = int.Parse(row["FLNGITEMID"].ToString()); ...
dt.Rows.Add(NewRow);
}
每次加要生成新的Row对象。
DataRow dr;
dt.Columns.Add(new DataColumn("name1", typeof(System.String)));
//ListBox1.Items.Clear();
////把文件名逐一添加到列表框控件
foreach (FileInfo fi in arrFile)
{
dr = dt.NewRow();
dr[0] = fi.Name;
dt.Rows.Add(dr);
//ListBox1.Items.Add(fi.Name);
}
你这样子做,绝对不会错
System.Data.DataTable dt2= dt.Copy();
//调整dt2的结构和数据用计算字段计算字段的用法,参考http://blog.csdn.net/jinjazz/archive/2008/04/08/2261721.aspx
DataRow dr;
dt.Columns.Add(new DataColumn("name1", typeof(System.String)));
//ListBox1.Items.Clear();
////把文件名逐一添加到列表框控件
foreach (FileInfo fi in arrFile)
{
dr = dt.NewRow();
dr[0] = fi.Name;
dt.Rows.Add(dr);
//ListBox1.Items.Add(fi.Name);
}
你这样子做,绝对不会错