public static DataTable TipoResidenciaDatatable(List <TipoResidencia> input) { DataTable data = new DataTable(); data.Columns.Add(new DataColumn("ID", typeof(int))); data.Columns.Add(new DataColumn("Name", typeof(string))); DataRow dr = data.NewRow(); dr[0] = 0; dr[1] = "Selecione um Tipo de Residência"; data.Rows.Add(dr); int a = input.Count; for (int i = 0; i < a; i++) { TipoResidencia tipoResidencia = input.ElementAt(i); dr = data.NewRow(); dr[0] = tipoResidencia.ID; dr[1] = tipoResidencia.Nome; data.Rows.Add(dr); } return(data); }
public override List <EntidadeDominio> Consultar(EntidadeDominio entidade) { if (connection.State == ConnectionState.Closed) { connection.Open(); } TipoResidencia tipo = (TipoResidencia)entidade; StringBuilder sql = new StringBuilder(); sql.Append("SELECT * FROM tb_tipo_residencia "); sql.Append(" WHERE 1 = 1 "); if (tipo.ID != 0) { sql.Append("AND id_tipo_res = :1 "); } if (!String.IsNullOrEmpty(tipo.Nome)) { sql.Append("AND nome_tipo_res = :2 "); } sql.Append("ORDER BY nome_tipo_res"); pst.CommandText = sql.ToString(); parameters = new NpgsqlParameter[] { new NpgsqlParameter("1", tipo.ID), new NpgsqlParameter("2", tipo.Nome) }; pst.Parameters.Clear(); pst.Parameters.AddRange(parameters); pst.Connection = connection; pst.CommandType = CommandType.Text; reader = pst.ExecuteReader(); // Lista de retorno da consulta do banco de dados, que conterá os produtores encontrados List <EntidadeDominio> tipos = new List <EntidadeDominio>(); while (reader.Read()) { tipo = new TipoResidencia(); tipo.ID = Convert.ToInt32(reader["id_tipo_res"]); tipo.Nome = reader["nome_tipo_res"].ToString(); tipos.Add(tipo); } connection.Close(); return(tipos); }