Sql批量提交方法

        #region SqlServer 批量提交


        /// <summary> 
        /// 注意:DataTable中的列需要与数据库表中的列完全一致。,只支持sql servert
        /// 已自测可用。
        /// </summary> 
        /// <param name="conStr">数据库连接串</param>
        /// <param name="strTableName">数据库中对应的表名</param> 
        /// <param name="dtData">数据集</param> 
        //public void SqlBulkCopyInsert(string conStr, string strTableName, DataTable dtData)
        public void SqlBulkToSQl<T>(string strTableName, List<T> lstDt)
        {
            try
            {
                DataTable dtList = Com.Domain.Common.DataConvert.ToDataTable<T>(lstDt);
                SqlBulkCopyInsert(strTableName, dtList);
            }
            catch (Exception ex)
            {
                throw (ex);
            }
        }


        /// <summary> 
        /// 注意:DataTable中的列需要与数据库表中的列完全一致。
        /// 已自测可用。
        /// </summary> 
        /// <param name="conStr">数据库连接串</param>
        /// <param name="strTableName">数据库中对应的表名</param> 
        /// <param name="dtData">数据集</param> 
        //public void SqlBulkCopyInsert(string conStr, string strTableName, DataTable dtData)
        public void SqlBulkCopyInsert(string strTableName, DataTable dtData)
        {
            try
            {
                string conStr = _db.ConnectionString;
                //conStr = "Server=192.168.0.7;Database=test2;Uid=sa;Pwd=123456;pooling=true;";
                using (SqlBulkCopy sqlRevdBulkCopy = new SqlBulkCopy(conStr))           //引用SqlBulkCopy 
                {
                    sqlRevdBulkCopy.DestinationTableName = strTableName;                //数据库中对应的表名 
                    sqlRevdBulkCopy.NotifyAfter = dtData.Rows.Count;                    //有几行数据 
                    sqlRevdBulkCopy.WriteToServer(dtData);                              //数据导入数据库 
                    sqlRevdBulkCopy.Close();                                            //关闭连接 
                }
            }
            catch (Exception ex)
            {
                throw (ex);
            }
        }


        #endregion
原文地址:https://www.cnblogs.com/lhlong/p/15206239.html