您当前的位置: 首页 >  c#

暂无认证

  • 0浏览

    0关注

    101061博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C# 该行已经属于另一个表 的解决方法

发布时间:2015-06-09 15:51:55 ,浏览量:0

产生错误的代码:

DataTable dtContract_src = Oper.GetDataTable("select * from T_Contract where ProjectID=" + ProjectID_src + " and Flag=0", con_src); foreach (DataRow dr in dtContract_src.Rows)
                            {
                                String ContractID_src = dr["ContractID"].ToString(); DataTable dtContract_dst = Oper.GetDataTable("select * from T_Contract where ProjectID=" + ProjectID_src + " and ContractID=" + ContractID_src + " and Flag=0", con_dst); if (dtContract_dst.Rows.Count != 0)
                                {
                                    impContract_exist++; continue; }

                                dtContract_dst.Rows.Add(dr); String columns = ""; String paramss = ""; OleDbCommand updateCmd = con_dst.CreateCommand(); foreach (DataColumn dc in dtContract_dst.Columns)
                                {
                                    if (columns == "")
                                    {
                                        columns = dc.ColumnName; paramss = "@" + dc.ColumnName; }
                                    else
                                    {
                                        columns += ", " + dc.ColumnName; paramss += ", @" + dc.ColumnName; }
                                    updateCmd.Parameters.Add(new OleDbParameter(dc.ColumnName, dc.DataType); }
                                updateCmd.CommandText = "insert into T_Contract(" + columns + ") Values(" + paramss + ")"; updateCmd.ExecuteNonQuery(); //OleDbDataAdapter dataAdap = new OleDbDataAdapter(); //dataAdap.InsertCommand = updateCmd; //dataAdap.Update(dtContract_dst); }

错误行:

dtContract_dst.Rows.Add(dr);

解决办法:

dtContract_dst.Rows.Add(dr.ItemArray);
关注
打赏
1655516835
查看更多评论
立即登录/注册

微信扫码登录

0.0500s