CARREGAMENTO DE DATATABLE EST? CORRETO?
Bom dia senhores,
carrego um datatable com o código abaixo e gostaria da opinião dos nobres colegas para me falarem se estou fazendo da forma correta e se não,
como seria?
Obs: Não estou tendo problemas no carregamento, apenas quero saber se essa é uma forma correta de fazer isso.
Desde já grato.
carrego um datatable com o código abaixo e gostaria da opinião dos nobres colegas para me falarem se estou fazendo da forma correta e se não,
como seria?
Obs: Não estou tendo problemas no carregamento, apenas quero saber se essa é uma forma correta de fazer isso.
Desde já grato.
public DataTable Localizar(string Bairro, string Cidade, string UF)
{
string strSQL = [Ô]SELECT tbl_bairros.id_bai, tbl_bairros.bai_descricao, tbl_cidades.cid_descricao, tbl_cidades.cid_uf FROM [Ô] +
[Ô]tbl_bairros INNER JOIN tbl_cidades ON tbl_bairros.cid_id = tbl_cidades.id_cid [Ô] +
[Ô]WHERE bai_descricao LIKE @bairro AND cid_descricao [Ô] +
[Ô]LIKE @cidade AND cid_uf LIKE @uf[Ô];
DataTable lista = new DataTable();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conexao.ObjetoConexao;
cmd.CommandText = strSQL;
cmd.Parameters.AddWithValue([Ô]@bairro[Ô], [Ô]%[Ô]+Bairro+[Ô]%[Ô]);
cmd.Parameters.AddWithValue([Ô]@cidade[Ô], [Ô]%[Ô]+Cidade+[Ô]%[Ô]);
cmd.Parameters.AddWithValue([Ô]@uf[Ô], [Ô]%[Ô]+ UF + [Ô]%[Ô]);
conexao.Conectar();
lista.Load(cmd.ExecuteReader());
return lista;
}
Eu faria um tratamento de exceção ao abrir a conexão e ao executar o cmd.ExecuteReader, e usaria blocos Using para fechar a conexão. Outra coisa que eu mudaria seria na parte que envolve os parâmetros. Criaria uma classe para representar esses dados. Por exemplo, poderia ser uma classe Endereco - o nome vai depender do contexto.
www.macoratti.net/vbn5_dpo.htm
public DataTable Localizar(Endereco endereco) {
[txt-color=#e80000]...[/txt-color]
cmd.Parameters.AddWithValue([Ô]@bairro[Ô], [Ô]%[Ô]+[txt-color=#e80000]endereco.Bairro[/txt-color]+[Ô]%[Ô]);
[txt-color=#e80000]...[/txt-color]
}
www.macoratti.net/vbn5_dpo.htm
E também o fechamento e dispose da conexão antes do retorno.
Entendi senhores, muito grato pelos auxÃlios! Me dou por satisfeito!
Tópico encerrado , respostas não são mais permitidas