Multiplas conexoes

17/05/2012

0

Olá Galera
Criei essa classe com ajuda de amigos aqui do fórum e está funcionando tudo ok ate aqui. Porem-me Corrigan se eu estiver errado.
Ao meu entender eu deveria ter uma classe separada para a conexão e essa classe deveria verificar-se já existe um conexão em aberto evitando assim múltiplas conexões.
Seria esse o caminho ou nos webform eu fecho a conexão após trazer o resultado ?

public class modelo
{


private string _Conexao ;
private SqlDataSource _Sql;

public modelo()
{

_Conexao = Data Source=meubanco.sytes.net;Initial Catalog=dbjava;Persist Security Info=True;User ID=UserNet;Password=minhaSenha;
_Sql = new SqlDataSource();
_Sql.ConnectionString = _Conexao;


}




public DataTable Selecionar(string sql)
{
SqlConnection conexao = new SqlConnection(_Conexao);
SqlCommand comando = conexao.CreateCommand();
comando.CommandText = sql;
SqlDataAdapter adaptador = new SqlDataAdapter(comando);
DataTable tabela = new DataTable();
conexao.Open();
adaptador.Fill(tabela);
conexao.Close();
return tabela;
}
Carlos Faria

Carlos Faria

Responder

Posts

17/05/2012

Joel Rodrigues

Cara, uma opção é você ter apenas um objeto SqlConnection, mas em geral, eu acredito que o melhor é manter a conexão fechada para não consumir recursos do servidor.

Uma forma de fazer seria assim:
public class MinhaClasse
{
	SqlConnection conexao;
	SqlCommand comando;
	SqlDataAdapter adaptador;

	public MinhaClasse()
	{
		SqlConnection conexao = new SqlConnection(StringConexao)	
		comando = conexao.CreateCommand();
		adaptador = new SqlDataAdapter(comando);
	}

	public DataTable Selecionar(string sql)
	{
		try
		{
			comando.CommandText = sql;		 
			DataTable tabela = new DataTable();
			if(conexao.State == ConectionState.Closed)
				conexao.Open();
			adaptador.Fill(tabela);
			return tabela;
		}
		finally
		{
			conexao.Close();
		}
	}

}


Desconsidere qualquer erro de sintaxe, não testei esse código, fiz no notepad agora.
Responder

17/05/2012

Carlos Faria

Valeu Joel obrigado pela dica
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar