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


    产生错误的代码:

    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);
  • 相关阅读:
    6月23号 java方法 什么是方法?
    6月21号 Java流程控制 练习
    6月21号 Java流程控制 break continue
    6月21号 Java流程控制 增强for
    6月19号 Java流程控制 循环结构for练习
    6月18号 Java流程控制 循环结构for
    qbot
    clion 2019.2
    raptor
    字符串练习
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/5304628.html
Copyright © 2020-2023  润新知