public DataTable ConsultaEmDataTable(string stringSQL, HydraParameters parametros = null) { DataTable dataTable = new DataTable(); SqlConnection sqlConnection = new SqlConnection(); try { sqlConnection = AbrirBanco(); using (SqlCommand comando = new SqlCommand(stringSQL, sqlConnection)) { Popula.Parametros(parametros, comando, false); using (SqlDataReader dadosTabela = comando.ExecuteReader()) { dataTable = Popula.DataTable(dadosTabela); } } } catch (Exception ex) { throw ex; } finally { FecharBanco(sqlConnection); } return(dataTable); }
public List <HydraTuple <T1, T2> > ConsultaLista <T1, T2>(string stringSQL, HydraParameters parametros = null) { List <HydraTuple <T1, T2> > lista = new List <HydraTuple <T1, T2> >(); SqlConnection sqlConnection = new SqlConnection(); try { sqlConnection = AbrirBanco(); using (SqlCommand comando = new SqlCommand(stringSQL, sqlConnection)) { Popula.Parametros(parametros, comando, false); using (SqlDataReader dadosTabela = comando.ExecuteReader()) { lista = Popula.ListaDuasTuple <T1, T2>(dadosTabela); } } } catch (Exception ex) { throw ex; } finally { FecharBanco(sqlConnection); } return(lista); }
public bool Consulta(string stringSQL, HydraParameters parametros) { bool retorno = false; SqlConnection sqlConnection = new SqlConnection(); try { sqlConnection = AbrirBanco(); using (SqlCommand comando = new SqlCommand(stringSQL, sqlConnection)) { Popula.Parametros(parametros, comando, false); comando.ExecuteReader(); } retorno = true; } catch (Exception ex) { throw ex; } finally { FecharBanco(sqlConnection); } return(retorno); }
/// <summary>Executa uma consulta personalizada no banco de dados. <br></br>Retorna a consulta convertida em uma lista da classe designada.</summary> /// <param name="queryString">String da consulta a ser feita</param> /// <param name="parameters">Paramêtros a serem usados na consulta</param> public T ReturnQuerySingle <T>(string queryString, HydraParameters parameters = null) { DataTable dataTable = BaseHydra.ConsultaEmDataTable(queryString, parameters); var entidade = BaseHydra.ConverteDataTableEmEntidade <T>(dataTable); return(entidade); }
/// <summary>Executa uma consulta personalizada no banco de dados. <br></br>Retorna a consulta convertida em uma lista da classe designada.</summary> /// <param name="queryString">String da consulta a ser feita</param> /// <param name="parameters">Paramêtros a serem usados na consulta</param> public List <T> ReturnQuery <T>(string queryString, HydraParameters parameters = null) { DataTable dataTable = BaseHydra.ConsultaEmDataTable(queryString, parameters); var lista = BaseHydra.ConverteDataTableEmLista <T>(dataTable); return(lista); }
/// <summary>Carrega uma tabela do banco de dados, convertendo a classe na tabela desejada. <br></br>Retorna a tabela convertida em uma entidade da mesma classe.</summary> /// <param name="top">Define limite de linhas do Select</param> /// <param name="columns">Define colunas a serem selecionadas</param> /// <param name="condition">Inclusão de condições extras, como por exemplo: WHERE, GROUP BY, HAVING e ORDER BY</param> public T LoadSingle <T>(string columns = "*", string condition = "", HydraParameters parameters = null) where T : new() { string comandoSQL; Tipo = typeof(T); Manipula.Consulta(out comandoSQL, Tipo, TipoConsulta.Select, 1, columns, condicoes: condition); var entidade = BaseHydra.ConsultaEntidade <T>(comandoSQL, columns, parameters); return(entidade); }
public bool Delete(object entidade) { string stringConsulta = ""; bool retorno = false; Type tipo = entidade.GetType(); HydraParameters hydraParametros = new HydraParameters(); PropertyInfo PK = tipo.GetProperties().Where(x => Valida.PrimaryKey(x) != null).FirstOrDefault(); Dictionary <PropriedadePK, object> propriedadesPK = Carrega.InfoPrimaryKey(entidade, tipo, PK, hydraParametros); if (propriedadesPK != null) { string valorPK = propriedadesPK[PropriedadePK.Valor].ToString(); string nomePK = propriedadesPK[PropriedadePK.Nome].ToString(); stringConsulta = Manipula.Delete(tipo, nomePK, valorPK); SqlConnection sqlConnection = new SqlConnection(); try { sqlConnection = AbrirBanco(); using (SqlCommand comando = new SqlCommand(stringConsulta, sqlConnection)) { using (SqlDataReader dadosTabela = comando.ExecuteReader()) { retorno = true; } } } catch (Exception ex) { throw ex; } finally { FecharBanco(sqlConnection); } } else { retorno = false; } return(retorno); }
public T ConsultaEntidade <T>(string stringSQL, string columns = "", HydraParameters parametros = null) { T entidade; SqlConnection sqlConnection = new SqlConnection(); try { sqlConnection = AbrirBanco(); using (SqlCommand comando = new SqlCommand(stringSQL, sqlConnection)) { Popula.Parametros(parametros, comando, false); using (SqlDataReader dadosTabela = comando.ExecuteReader()) { List <string> colunas = null; if (columns != "") { colunas = columns.Split(',').ToList(); } entidade = Popula.Entidade <T>(dadosTabela, colunas); } } } catch (Exception ex) { throw ex; } finally { FecharBanco(sqlConnection); } return(entidade); }
/// <summary>Executa uma consulta personalizada no banco de dados.<br></br>Caso seja realizado com sucesso é retornado um boolean com valor true.</summary> /// <param name="queryString">String da consulta a ser feita</param> /// <param name="parameters">Paramêtros a serem usados na consulta</param> public bool ExecuteQuery(string queryString, HydraParameters parametros = null) { bool resultado = BaseHydra.Consulta(queryString, parametros); return(resultado); }
/// <summary>Carrega uma tabela do banco de dados, convertendo a classe na tabela desejada. <br></br>Retorna a tabela convertida em uma lista da mesma classe.</summary> /// <param name="top">Define limite de linhas do Select</param> /// <param name="columns">Define colunas a serem selecionadas, usando uma ',' para serapar cada coluna</param> /// <param name="condition">Inclusão de condições extras, como por exemplo: WHERE, GROUP BY, HAVING e ORDER BY</param> /// <param name="parameters">Paramêtros a serem usados na consulta</param> public List <T> Load <T>(int?top = null, string columns = "*", string condition = "", HydraParameters parameters = null) { string comandoSQL; Tipo = typeof(T); Manipula.Consulta(out comandoSQL, Tipo, TipoConsulta.Select, top, columns, condicoes: condition); var lista = BaseHydra.ConsultaLista <T>(comandoSQL, columns, parameters); return(lista); }
/// <summary>Carrega uma tabela do banco de dados, convertendo a classe na tabela desejada. <br></br>Retorna um DataTable.</summary> /// <param name="top">Define limite de linhas do Select</param> /// <param name="columns">Define colunas a serem selecionadas</param> /// <param name="condition">Inclusão de condições extras, como por exemplo: WHERE, GROUP BY, HAVING e ORDER BY</param> public DataTable LoadFromDataTable(string queryString, HydraParameters parameters = null) { var dataTable = BaseHydra.ConsultaEmDataTable(queryString, parameters); return(dataTable); }
/// <summary>Executa uma consulta personalizada no banco de dados. <br></br>Retorna a consulta convertida em uma tupla de 3 itens</summary> /// <param name="queryString">String da consulta a ser feita</param> /// <param name="parameters">Paramêtros a serem usados na consulta</param> public List <HydraTuple <T1, T2, T3> > ReturnQuery <T1, T2, T3>(string queryString, HydraParameters parameters = null) { var lista = BaseHydra.ConsultaLista <T1, T2, T3>(queryString, parameters); return(lista); }
public object Save(object entidade) { string stringConsulta = ""; bool pkIdentidade = false; bool novoItem; Type tipo = entidade.GetType(); HydraParameters hydraParametros = new HydraParameters(); PropertyInfo PK = tipo.GetProperties().Where(x => Valida.PrimaryKey(x) != null).FirstOrDefault(); PropertyInfo[] colunas = tipo.GetProperties().Where(x => Valida.Coluna(x) != null).ToArray(); Dictionary <PropriedadePK, object> propriedadesPK = Carrega.InfoPrimaryKey(entidade, tipo, PK, hydraParametros); List <string> NomeColunas = Carrega.Parametros(entidade, tipo, hydraParametros, colunas); SqlConnection sqlConnection = new SqlConnection(); SqlCommand comando = new SqlCommand(); SqlDataReader dadosTabela; if (propriedadesPK != null) { string valorPK = propriedadesPK[PropriedadePK.Valor].ToString(); string nomePK = propriedadesPK[PropriedadePK.Nome].ToString(); pkIdentidade = bool.Parse(propriedadesPK[PropriedadePK.Identidade].ToString()); string consultaObjeto = ""; Manipula.Consulta(out consultaObjeto, tipo, TipoConsulta.Select, 1, nomePK, condicoes: $"WHERE {nomePK} = {valorPK}"); try { sqlConnection = AbrirBanco(); using (comando = new SqlCommand(consultaObjeto, sqlConnection)) { using (dadosTabela = comando.ExecuteReader()) { if (dadosTabela.Read()) { novoItem = false; } else { novoItem = true; } } } } catch (Exception ex) { FecharBanco(sqlConnection); throw ex; } if (novoItem == true) { if (pkIdentidade == true) { stringConsulta = Insert(tipo, NomeColunas, nomePK); } else { stringConsulta = Insert(tipo, NomeColunas, nomePK, false); } } else { if (pkIdentidade == true) { stringConsulta = Update(tipo, NomeColunas, nomePK, valorPK); } else { stringConsulta = Update(tipo, NomeColunas, nomePK, valorPK, false); } } try { using (comando = new SqlCommand(stringConsulta, sqlConnection)) { Popula.Parametros(hydraParametros, comando, pkIdentidade); using (dadosTabela = comando.ExecuteReader()) { Popula.Objeto(dadosTabela, entidade, tipo); } } } catch (Exception ex) { throw ex; } finally { FecharBanco(sqlConnection); } } else { entidade = new object(); } return(entidade); }
public List <object> ConsultaLista(object entidade, string stringSQL, string columns = "", HydraParameters parametros = null) { List <object> lista = new List <object>(); SqlConnection sqlConnection = new SqlConnection(); Type tipo = entidade.GetType(); try { sqlConnection = AbrirBanco(); using (SqlCommand comando = new SqlCommand(stringSQL, sqlConnection)) { Popula.Parametros(parametros, comando, false); using (SqlDataReader dadosTabela = comando.ExecuteReader()) { List <string> colunas = null; if (columns != "") { colunas = columns.Split(',').ToList(); } lista = Popula.ListaObjeto(dadosTabela, entidade, tipo, colunas); } } } catch (Exception ex) { throw ex; } finally { FecharBanco(sqlConnection); } return(lista); }