コード例 #1
0
ファイル: DAO.cs プロジェクト: vpineda7/Reserva
        /// <summary>
        /// Metodo para ejecutar un procedimiento almacenado en la bd
        /// </summary>
        /// <param name="parametros">Lista de parametros que se le va a asociar</param>
        /// <param name="query">Cadena con el query a ejecutar</param>
        public List <ResultadoBD> EjecutarStoredProcedure(string query, List <Parametro> parametros)
        {
            try
            {
                Conectar();
                List <ResultadoBD> resultados = new List <ResultadoBD>();
                using (conexion)
                {
                    comando             = new SqlCommand(query, conexion);
                    comando.CommandType = CommandType.StoredProcedure;
                    AsignarParametros(parametros);
                    if (conexion.State == ConnectionState.Closed)
                    {
                        conexion.Open();
                    }
                    comando.ExecuteNonQuery();
                    if (comando.Parameters != null)
                    {
                        foreach (SqlParameter parameter in comando.Parameters)
                        {
                            if (parameter.Direction.Equals(ParameterDirection.Output))
                            {
                                ResultadoBD resultado = new ResultadoBD(parameter.ParameterName, parameter.Value.ToString());
                                resultados.Add(resultado);
                            }
                        }
                        if (resultados != null)
                        {
                            return(resultados);
                        }
                        else
                        {
                            throw new ExceptionBD(RecursoBD.Cod_Error_Parametro, RecursoBD.Error_Parametro, new ExceptionBD());
                        }
                    }

                    return(null);
                }
            }
            catch (SqlException ex)
            {
                //throw new ExceptionBD(RecursoBD.Cod_Error_General, RecursoBD.Error_General, ex);
                throw ex;
            }
            catch (Exception ex)
            {
                throw new ExceptionBD(RecursoBD.Cod_Error_General, RecursoBD.Error_General, ex);;
            }
            finally
            {
                Desconectar();
            }
        }
コード例 #2
0
    protected DataTable ObtenerTabla(string sql)
    {
      dt = new DataTable();

      using (DataSql datos = new DataSql(AppGlobal.baseDatos.CadenaConexion))
      {        
        resultado = datos.EjecutarConsulta(sql);

        if (resultado.Exitoso && resultado.Tablas.Tables.Count > 0)
        {
          dt = resultado.Tablas.Tables[0];
        }
      }

      return dt;
    }
コード例 #3
0
    protected int ObtenerEscalar(string sql)
    {
      int n = 0;
      dt = new DataTable();

      using (DataSql datos = new DataSql(AppGlobal.baseDatos.CadenaConexion))
      {
        resultado = datos.EjecutarConsulta(sql);

        if (resultado.Exitoso && resultado.Tablas.Tables.Count > 0)
        {
          dt = resultado.Tablas.Tables[0];
          n = Convert.ToInt32(dt.Rows[0][0]);
        }
      }

      return n;
    }