Entwickler-Ecke

C# - Die Sprache - Warum manchmal using?


Talemantros - So 23.03.14 12:48
Titel: Warum manchmal using?
Guten Morgen,
im Laufe der Suche im Internet zu Problemstellungen finde ich immer wieder using-Anweisungen


C#-Quelltext
1:
using (SqlConnection conn = new SqlConnection(connectionString))                    


Während manchmal auch


C#-Quelltext
1:
SqlConnection conn = new SqlConnection(connectionString)                    


scheinbar das selbe tut.


Finde aber irgendwie keine Erklärung.

Vielen Dank

Gruß
Daniel


Moderiert von user profile iconTh69: Topic aus Sonstiges (.NET) verschoben am So 23.03.2014 um 12:49


Yankyy02 - So 23.03.14 13:25

Hallo,

schau dir mal diese Erklärung dazu an dann dürfte dir einiges klarer sein was das using hier zu bedeuten hat.
http://www.codingfreaks.de/2009/01/28/c_using_idisposable_verstanden/


MfG

Gery


Th69 - So 23.03.14 13:49

Hallo,

das Entscheidende wird aber in dem Artikel nicht erwähnt (sondern nur in einem der Kommentare), nämlich daß bei using(...) die Dispose()-Methode auch im Falle einer Exception aufgerufen wird, d.h. technisch entspricht der using (X x = new X())-Anweisung:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
try
{
   X x = new X();
}
finally
{
   ((IDisposable)x).Dispose();
}

Grundsätzlich sollte also bei der Benutzung jeder Klasse, welche das IDisposable-Interface implementiert, using(...) verwendet werden.


Talemantros - So 23.03.14 16:15

Vielen Dank