//Popular Parametros private void Popular_Parametros(SqlCommand scm, PesquisaGeralFiltroDTO FiltroDTO) { try { scm.Parameters.AddWithValue("@id", FiltroDTO.Id); //Utilizado no where no caso de alteração scm.Parameters.AddWithValue("@App", FiltroDTO.App); scm.Parameters.AddWithValue("@img", FiltroDTO.Img); scm.Parameters.AddWithValue("@nome", FiltroDTO.Nome); scm.Parameters.AddWithValue("@Opcao", FiltroDTO.Opcao); scm.Parameters.AddWithValue("@SQL", FiltroDTO.Sql); scm.Parameters.AddWithValue("@UserType", FiltroDTO.UserType); scm.Parameters.AddWithValue("@Rep", "N"); //Substitui o null por DBnull foreach (SqlParameter Parameter in scm.Parameters) { if (Parameter.Value == null) { Parameter.Value = DBNull.Value; } } } catch (Exception ex) { throw ex; } }
public void Registrar(PesquisaGeralFiltroDTO FiltroDTO, bool NewFilter) { try { //Registrando os dados if (NewFilter == true) { //Inclusao new PesquisaGeralDAL(this.strConexao).Incluir(FiltroDTO); } else { //Alteração new PesquisaGeralDAL(this.strConexao).Alterar(FiltroDTO); } } catch (CustomException ex) { throw ex; } catch (Exception ex) { throw ex; } }
//Selecionar Filtro public PesquisaGeralFiltroDTO SelecionaFiltro(int Id) { using (SqlConnection scn = new SqlConnection(this.strConexao)) { SqlDataReader dtr = null; PesquisaGeralFiltroDTO FiltroDTO = new PesquisaGeralFiltroDTO(); try { string sql = "SELECT * FROM Filtros WHERE (ID = " + Id + ")"; scn.Open(); SqlCommand scm = new SqlCommand(sql, scn); dtr = scm.ExecuteReader(); if (dtr.Read()) { FiltroDTO.Id = Convert.ToInt32(dtr["id"]); FiltroDTO.App = dtr["app"].ToString(); FiltroDTO.Img = Convert.ToInt32(dtr["img"]); FiltroDTO.Nome = dtr["nome"].ToString(); FiltroDTO.Opcao = dtr["opcao"].ToString(); FiltroDTO.Sql = dtr["sql"].ToString(); FiltroDTO.Rep = dtr["rep"].ToString(); FiltroDTO.UserType = dtr["usertype"].ToString(); FiltroDTO.SqlChanged = ""; } else { throw new Exception("Não foi possível localizar o filtro Id nº " + Id + "!"); } return(FiltroDTO); } catch (SqlException ex) { throw ex; } catch (Exception ex) { throw ex; } finally { if (dtr != null) { dtr.Close(); } scn.Close(); } } }
//Incluir Dados public void Incluir(PesquisaGeralFiltroDTO FiltroDTO) { using (SqlConnection scn = new SqlConnection(this.strConexao)) { try { StringBuilder sb = new StringBuilder(); sb.Append("INSERT INTO [Filtros] "); sb.Append("([App]"); sb.Append(",[img]"); sb.Append(",[Nome]"); sb.Append(",[Opcao]"); sb.Append(",[SQL]"); sb.Append(",[usertype]"); sb.Append(",[Rep])"); sb.Append(" VALUES "); sb.Append("(@App"); sb.Append(",@img"); sb.Append(",@Nome"); sb.Append(",@Opcao"); sb.Append(",@SQL"); sb.Append(",@usertype"); sb.Append(",@Rep)"); sb.Append(";SELECT SCOPE_IDENTITY();"); scn.Open(); SqlCommand scm = new SqlCommand(sb.ToString(), scn); //Popula os parametros com os seus respectivos valores Popular_Parametros(scm, FiltroDTO); //Retorna o id do insert FiltroDTO.Id = Convert.ToInt32(scm.ExecuteScalar()); } catch (SqlException ex) { throw ex; } catch (Exception ex) { throw ex; } finally { scn.Close(); } } }
//Alterar Dados public void Alterar(PesquisaGeralFiltroDTO FiltroDTO) { using (SqlConnection scn = new SqlConnection(this.strConexao)) { try { StringBuilder sb = new StringBuilder(); sb.Append("UPDATE [Filtros] SET [App] = @App"); sb.Append(",[img] = @img"); sb.Append(",[Nome] = @Nome"); sb.Append(",[Opcao] = @Opcao"); sb.Append(",[SQL] = @SQL"); sb.Append(",[Rep] = @Rep"); sb.Append(",[usertype] = @usertype"); sb.Append(" WHERE (id = @Id)"); scn.Open(); SqlCommand scm = new SqlCommand(sb.ToString(), scn); Popular_Parametros(scm, FiltroDTO); if (scm.ExecuteNonQuery() == 0) { throw new Exception("O registro Id nº " + FiltroDTO.Id + " não foi localizado.\nNão foi possível registrar as alterações!"); } } catch (SqlException ex) { throw ex; } catch (Exception ex) { throw ex; } finally { scn.Close(); } } }