DataTable拷贝DataRow

发布日期:2018-02-08    浏览次数:415

一开始,思路是这样的:

DataTable dt = SqlHelper.GetTable("select * from Person");
DataTable dt2 = dt.Clone();
DataRow dr = dt.Rows[0];
dt2.Rows.Add(dr);
Console.ReadKey();

遗憾的是,将会抛出一个异常:

 

 

修改后的实现方式:

DataTable dt = SqlHelper.GetTable("select * from Person");
DataTable dt2 = dt.Clone();
DataRow dr = dt.Rows[0];
dt2.Rows.Add(dr.ItemArray);
Console.ReadKey();

或者 :

DataTable dt = SqlHelper.GetTable("select * from Person");
DataTable dt2 = dt.Clone();
DataRow dr = dt.Rows[0];
dt2.ImportRow(dr);
Console.ReadKey();

 

最后附上SqlHelper:

static class SqlHelper
{
    private static readonly string ConnectionString = ConfigurationManager.ConnectionStrings["Default"].ConnectionString;

    public static DataTable GetTable(string sql, params SqlParameter[] paras)
    {
        using (SqlConnection conn = new SqlConnection(ConnectionString))
        {
            SqlCommand cmd = new SqlCommand(sql, conn);
            cmd.Parameters.AddRange(paras);
            SqlDataAdapter adapter = new SqlDataAdapter(cmd);
            DataSet ds = new DataSet();
            conn.Open();
            adapter.Fill(ds);
            return ds.Tables[0];
        }
    }
}
View Code

 

本文网址:https://www.wyxxw.cn/blog-detail-2-6-75.html

返回列表

非特殊说明,本文版权归原作者所有,转载请注明出处

提示:本站所有资源仅供学习与参考,请勿用于商业用途。图片来自互联网~如侵犯您的权益,请联系QQ:1067507709.

提示:转载请注明来自:https://www.cnblogs.com/godbell/p/8412826.html 。 转载人:momo