コード例 #1
0
        public static void Update(List <DetalleProducto> detProd, int idProducto)
        {
            Acceso         ac   = new Acceso();
            SqlTransaction tran = null;

            SqlConnection conexion = new SqlConnection(ac.getCadenaConexion());

            SqlCommand cmd;

            try
            {
                conexion.Open();
                tran = conexion.BeginTransaction();
                //SqlCommand cmdIdentity = new SqlCommand("select @@Identity", conexion, tran);
                //ped.idPedido = Convert.ToInt32((cmdIdentity.ExecuteScalar()));
                EstructuraProductoDAO.Delete(idProducto);

                foreach (DetalleProducto detPed in detProd)
                {
                    //detPed.pedido.idPedido = ped.idPedido;
                    EstructuraProductoDAO.Insert(detPed, conexion, tran);
                }
                tran.Commit();
            }
            catch (ArgumentException ex)
            {
                if (conexion.State == ConnectionState.Open)
                {
                    tran.Rollback();
                }
                throw new ApplicationException(ex.Message);
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error en BD: " + ex.Message);
            }
            finally
            {
                conexion.Close();
            }
        }
コード例 #2
0
        public static void Insert(List <DetalleProducto> detProd)
        {
            Acceso         ac   = new Acceso();
            SqlTransaction tran = null;

            SqlConnection conexion = new SqlConnection(ac.getCadenaConexion());

            SqlCommand cmd;

            try
            {
                conexion.Open();
                tran = conexion.BeginTransaction();
                foreach (DetalleProducto detP in detProd)
                {
                    //detPed.pedido.idPedido = ped.idPedido;
                    EstructuraProductoDAO.Insert(detP, conexion, tran);
                }
                tran.Commit();
            }
            catch (ArgumentException ex)
            {
                if (conexion.State == ConnectionState.Open)
                {
                    tran.Rollback();
                }
                throw new ApplicationException(ex.Message);
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error en BD: " + ex.Message);
            }
            finally
            {
                conexion.Close();
            }
        }