예제 #1
0
        public static string ExcuteSqlTranction(object objList, string tablename)
        {
            //这里有两种方法,一种,将大批量插入写入D层,解耦,同时使用实例化的DB连接串,不向外暴露,但是,一旦DAO层被重新生成,则更改起来较为麻烦
            //另一种,使用连接字符串,并进行加密,加密秘钥暂定"connKey",此方法方便写入APP.config,更换数据库方便

            //string conn = this.connectionString;
            DataTable dt = new DataTable();

            try
            {
                IList temp = (IList)objList;
                //将泛型转化成DataTable
                dt = ToDataTableTow(temp);

                //使用秘钥进行加密,秘钥可以分发给专门的人进行记录,在更改数据时留出输入秘钥的接口
                string conn = DESEncrypt.Encrypt(connectionString, "connKey");
                //输入秘钥进行解密
                string finalConn = DESEncrypt.Decrypt(conn, "connKey");

                UtilDAO.InsertEntities(finalConn, tablename, dt);
                return("OK");
            }
            catch (Exception ex)
            {
                return("NG,批量插入失败:" + ex);
                //throw ex;
            }
        }
        /// <summary>
        /// 把DataTable插入数据库
        /// </summary>
        /// <param name="dt">DataTable数据</param>
        /// <param name="tablename">插入的表名</param>
        /// <returns></returns>
        public string ExcuteDataTableToDB(DataTable dt, string tablename)
        {
            //这里有两种方法,一种,将大批量插入写入D层,解耦,同时使用实例化的DB连接串,不向外暴露,但是,一旦DAO层被重新生成,则更改起来较为麻烦
            //另一种,使用连接字符串,并进行加密,加密秘钥暂定"connKey",此方法方便写入APP.config,更换数据库方便
            Database db   = DatabaseFactory.CreateDatabase(DatabaseEnum.SITBusinessDB);
            string   conn = db.ConnectionString;

            try
            {
                //使用秘钥进行加密,秘钥可以分发给专门的人进行记录,在更改数据时留出输入秘钥的接口
                conn = DESEncrypt.Encrypt(conn, "connKey");
                //输入秘钥进行解密
                string finalConn = DESEncrypt.Decrypt(conn, "connKey");

                UtilDAO.InsertEntities(finalConn, tablename, dt);
                return("OK");
            }
            catch (Exception ex)
            {
                return("NG,插入失败:" + ex);
                //throw ex;
            }
        }