O intuito deste e-book, no literalmente ENSINAR a programar desde o incio. Para isso, continue acompanhando nosso contedo, que em breve haver muitas novidades de cursos bsicos e avanados. Neste e-book, a inteno mostrar algumas dicas de alguns problemas que podemos nos deparar no dia a dia e como resolver estes problemas.
Diego Borges
Dica #1: USING
USING(){...}
Dica #1: USING O poder do USING
A instruo USING serve para descartar - tecnicamente dar Dispose() em um objeto automaticamente. Para esta funo, pode-se utilizar o try/catch e fazer o Dispose() manualmente no finally, porm...manualmente. Com USING, o cdigo fica melhor estruturado, mais bonito e o Dispose() feito de forma automtica, no alocando memria e liberando os objetos em questo.
Dica #1: USING Exemplo 1
Para facilitar o entendimento, veja o exemplo abaixo, onde o objeto de conexo liberada automaticamente: using (SqlConnection conn = new SqlConnection("connString")) { //seu cdigo... }
Dica #1: USING Exemplo 2
Neste segundo caso, usaremos o USING para liberar o leitor de arquivo e no correr o risco do arquivo ficar bloqueado. using (StreamReader sr = new StreamReader(meu_arquivo.txt")) { string line = sr.ReadToEnd(); Console.WriteLine(line); }
Dica #1: USING - Concluso
Em ambos os casos, voc poder observar a agilidade de se usar o objeto e automaticamente liberar o mesmo. Isso pode te livrar de grande dor de cabea, com o intuito de no ficar com conexes ao banco de dados, assim como no manter arquivos em memria.
Diego Borges
Dica #2: ConnectionState
CONN.OPEN(); CONN.CLOSE();
Dica #2: ConnectionState Fechando conexes
Outro grande problema que voc pode ter deixar inmeras conexes ativas ao banco de dados. Dependendo do tamanho de seu projeto, isso pode tornar seu sistema extremamente lento, alm de consumir conexes ao banco de dados.
Dica #2: ConnectionState Exemplo
Para facilitar o entendimento, veja o exemplo abaixo, onde irei abrir a conexo, popular um DataTable, fechar a conexo e liberar o objeto: DataTable dt = new DataTable(); using (SqlConnection conn = new SqlConnection(connString)) { SqlCommand sql = new SqlCommand(queryString, conn); SqlDataAdapter sda = new SqlDataAdapter(sql); if (conn.State == ConnectionState.Closed) { conn.Open(); } sda.Fill(dt); if (conn.State == ConnectionState.Open) { conn.Close(); } }
Dica #2: ConnectionState Concluso
Pode-se observar no exemplo dado, que ns no s abrimos, usamos e fechamos a conexo, como tambm fizemos um verificao antes de abrir e fechar. O intuito de se testar se a conexo est fechada para abrir e aberta para fechar, serve para que o C# no retorne uma exceo no cdigo. Sendo assim, teremos os objetos liberados pelo USING, o IF para testar a conexo e por fim, fechamos a conexo com o banco.
Quer aprender mais sobre C# e
ver mais dicas? Quero continuar vendo mais dicas CONSIDERAES FINAIS O intuito deste e-book foi evidenciar duas dicas primordiais para programao em C# que ir te livrar de grandes dores de cabea.